Package com.github.overengineer.scope.conversation.annotations

Examples of com.github.overengineer.scope.conversation.annotations.BeginConversation


                        if (LOG.isDebugEnabled()) {
                            LOG.debug("Adding method [{}] as a Begin Action for conversation [{}]", methodName, conversation);
                        }
                        if (method.isAnnotationPresent(BeginConversation.class)) {
                            BeginConversation config = method.getAnnotation(BeginConversation.class);
                            long maxIdle = config.maxIdleTimeMillis();
                            if (maxIdle == -1L) {
                                maxIdle = this.maxIdleTimeMillis;
                            }
                            int maxInstance = config.maxInstances();
                            if (maxInstance == 0) {
                                maxInstance = this.maxInstances;
                            }
                            configuration.addBeginAction(methodName, maxIdle, config.maxIdleTime(), maxInstance, config.transactional());
                        } else {
                            configuration.addBeginAction(methodName, this.maxIdleTimeMillis, "", this.maxInstances, false);
                        }

                    }
                }

                //end action methods
                Collection<String> methodEndConversations = this.arbitrator.getEndConversations(clazz, method);
                if (methodEndConversations != null) {
                    for (String conversation : methodEndConversations) {
                        ConversationClassConfiguration configuration = temporaryConversationMap.get(conversation);
                        if (configuration == null) {
                            configuration = new ConversationClassConfigurationImpl(conversation);
                            temporaryConversationMap.put(conversation, configuration);
                        }
                        if (LOG.isDebugEnabled()) {
                            LOG.debug("Adding method [{}] as an End Action for Conversation [{}]", methodName, conversation);
                        }
                        if (method.isAnnotationPresent(EndConversation.class)) {
                            EndConversation config = method.getAnnotation(EndConversation.class);
                            configuration.addEndAction(methodName, config.accessibleFromView());
                        } else {
                            configuration.addEndAction(methodName, false);
                        }
                    }
                }
View Full Code Here


    @Override
    public Collection<String> getBeginConversations(Class<?> clazz, Method method) {
        Set<String> methodConversations = new HashSet<String>();
        Class<?> declaringClass = method.getDeclaringClass();
        if (method.isAnnotationPresent(BeginConversation.class)) {
            BeginConversation conversationmethod = method.getAnnotation(BeginConversation.class);
            methodConversations.addAll(Arrays.asList(conversationmethod.conversations()));
            if (declaringClass.equals(clazz) && methodConversations.size() == 0) {
                methodConversations.addAll(Arrays.asList(getConversationsWithoutInheritance(clazz, actionSuffix)));
            }
        } else if (declaringClass.equals(clazz) && method.getName().startsWith("begin")) {
            methodConversations.addAll(Arrays.asList(getConversationsWithoutInheritance(clazz, actionSuffix)));
View Full Code Here

TOP

Related Classes of com.github.overengineer.scope.conversation.annotations.BeginConversation

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.