You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by cd...@apache.org on 2022/06/17 09:44:34 UTC
[flex-blazeds] 01/01: - Updated most external dependencies and plugins - Updated to the most recent apache parent pom - Added the rat plugin to check for missing header (and added the missing headers) - Added the OWASP plugin to check for vulnerable dependencies (And managed the false positives) - Commented out the spring-boot-starter and all tomcat modules as they are extremely CVE affected and no invulnerable versions were available
This is an automated email from the ASF dual-hosted git repository.
cdutz pushed a commit to branch security-updates
in repository https://gitbox.apache.org/repos/asf/flex-blazeds.git
commit 125c935e2548fcceeee9c19e736e25d765f8265b
Author: cdutz <ch...@c-ware.de>
AuthorDate: Fri Jun 17 11:43:41 2022 +0200
- Updated most external dependencies and plugins
- Updated to the most recent apache parent pom
- Added the rat plugin to check for missing header (and added the missing headers)
- Added the OWASP plugin to check for vulnerable dependencies (And managed the false positives)
- Commented out the spring-boot-starter and all tomcat modules as they are extremely CVE affected and no invulnerable versions were available
---
ApproveBlazeDS.xml | 654 +++++++--------
README | 10 +-
archetypes/blazeds-spring-boot-archetype/README.md | 41 +-
archetypes/blazeds-spring-boot-archetype/pom.xml | 97 ++-
.../META-INF/maven/archetype-metadata.xml | 54 +-
.../src/main/resources/archetype-resources/pom.xml | 108 +--
.../main/java/BlazeDSSpringBootApplication.java | 44 +-
.../src/main/java/services/ExampleService.java | 44 +-
.../resources/META-INF/flex/services-config.xml | 152 ++--
.../resources/projects/basic/archetype.properties | 19 +-
archetypes/pom.xml | 31 +-
build.properties | 35 +-
build.xml | 646 ++++++++-------
common/build.xml | 28 +-
common/pom.xml | 47 +-
.../src/main/java/flex/graphics/ImageSnapshot.java | 63 +-
.../java/flex/messaging/LocalizedException.java | 133 ++-
.../config/AbstractConfigurationParser.java | 255 +++---
.../flex/messaging/config/AdapterSettings.java | 35 +-
.../ApacheXPathClientConfigurationParser.java | 50 +-
.../flex/messaging/config/ChannelSettings.java | 130 ++-
.../flex/messaging/config/ClientConfiguration.java | 88 +-
.../config/ClientConfigurationParser.java | 485 ++++-------
.../flex/messaging/config/ClusterSettings.java | 38 +-
.../main/java/flex/messaging/config/ConfigMap.java | 225 ++---
.../messaging/config/ConfigurationConstants.java | 135 ++-
.../messaging/config/ConfigurationException.java | 3 +-
.../config/ConfigurationFileResolver.java | 5 +-
.../flex/messaging/config/ConfigurationParser.java | 5 +-
.../flex/messaging/config/DestinationSettings.java | 47 +-
.../flex/messaging/config/FlexClientSettings.java | 50 +-
.../flex/messaging/config/LocalFileResolver.java | 106 +--
.../flex/messaging/config/LoggingSettings.java | 14 +-
.../messaging/config/LoginCommandSettings.java | 28 +-
.../flex/messaging/config/PropertiesSettings.java | 41 +-
.../flex/messaging/config/SecurityConstraint.java | 26 +-
.../flex/messaging/config/ServiceSettings.java | 60 +-
.../messaging/config/ServicesConfiguration.java | 7 +-
.../messaging/config/ServicesDependencies.java | 331 +++-----
.../java/flex/messaging/config/TargetSettings.java | 23 +-
.../java/flex/messaging/config/TokenReplacer.java | 82 +-
.../config/XPathClientConfigurationParser.java | 49 +-
.../java/flex/messaging/log/AbstractTarget.java | 87 +-
.../java/flex/messaging/log/ConsoleTarget.java | 9 +-
.../flex/messaging/log/LineFormattedTarget.java | 75 +-
common/src/main/java/flex/messaging/log/Log.java | 296 +++----
.../java/flex/messaging/log/LogCategories.java | 6 +-
.../src/main/java/flex/messaging/log/LogEvent.java | 14 +-
.../src/main/java/flex/messaging/log/Logger.java | 178 ++--
.../src/main/java/flex/messaging/log/Target.java | 5 +-
.../flex/messaging/util/BasicPrettyPrinter.java | 97 +--
.../java/flex/messaging/util/ExceptionUtil.java | 107 ++-
.../main/java/flex/messaging/util/FileUtils.java | 43 +-
.../main/java/flex/messaging/util/LocaleUtils.java | 19 +-
.../main/java/flex/messaging/util/ObjectTrace.java | 67 +-
.../java/flex/messaging/util/PrettyPrintable.java | 5 +-
.../java/flex/messaging/util/PrettyPrinter.java | 5 +-
.../util/PropertyStringResourceLoader.java | 174 ++--
.../java/flex/messaging/util/ResourceLoader.java | 29 +-
.../main/java/flex/messaging/util/StringUtils.java | 74 +-
.../main/java/flex/messaging/util/UUIDUtils.java | 188 ++---
.../resources/flex/messaging/errors.properties | 30 -
core/AdobeInfo.xml | 4 +-
core/build.xml | 100 +--
core/pom.xml | 91 +-
.../src/main/java/flex/management/BaseControl.java | 217 ++---
.../java/flex/management/BaseControlMBean.java | 3 +-
.../flex/management/MBeanLifecycleManager.java | 26 +-
.../java/flex/management/MBeanServerLocator.java | 7 +-
.../flex/management/MBeanServerLocatorFactory.java | 64 +-
core/src/main/java/flex/management/Manageable.java | 17 +-
.../java/flex/management/ManageableComponent.java | 115 +--
.../java/flex/management/ManagementException.java | 5 +-
.../management/PlatformMBeanServerLocator.java | 10 +-
.../main/java/flex/management/jmx/Attribute.java | 26 +-
.../flex/management/jmx/MBeanAttributeInfo.java | 47 +-
.../flex/management/jmx/MBeanConstructorInfo.java | 56 +-
.../main/java/flex/management/jmx/MBeanInfo.java | 113 ++-
.../flex/management/jmx/MBeanOperationInfo.java | 63 +-
.../flex/management/jmx/MBeanParameterInfo.java | 32 +-
.../flex/management/jmx/MBeanServerGateway.java | 494 ++++-------
.../java/flex/management/jmx/ObjectInstance.java | 26 +-
.../main/java/flex/management/jmx/ObjectName.java | 43 +-
.../runtime/AdminConsoleDisplayRegistrar.java | 65 +-
.../runtime/AdminConsoleDisplayRegistrarMBean.java | 9 +-
.../flex/management/runtime/AdminConsoleTypes.java | 9 +-
.../runtime/messaging/DestinationControl.java | 51 +-
.../runtime/messaging/DestinationControlMBean.java | 7 +-
.../runtime/messaging/MessageBrokerControl.java | 88 +-
.../messaging/MessageBrokerControlMBean.java | 3 +-
.../messaging/MessageDestinationControl.java | 177 ++--
.../messaging/MessageDestinationControlMBean.java | 3 +-
.../messaging/client/FlexClientManagerControl.java | 40 +-
.../client/FlexClientManagerControlMBean.java | 3 +-
.../messaging/endpoints/AMFEndpointControl.java | 15 +-
.../endpoints/AMFEndpointControlMBean.java | 3 +-
.../messaging/endpoints/EndpointControl.java | 83 +-
.../messaging/endpoints/EndpointControlMBean.java | 3 +-
.../messaging/endpoints/HTTPEndpointControl.java | 15 +-
.../endpoints/HTTPEndpointControlMBean.java | 3 +-
.../endpoints/PollingEndpointControl.java | 21 +-
.../endpoints/PollingEndpointControlMBean.java | 3 +-
.../endpoints/StreamingAMFEndpointControl.java | 15 +-
.../StreamingAMFEndpointControlMBean.java | 5 +-
.../endpoints/StreamingEndpointControl.java | 73 +-
.../endpoints/StreamingEndpointControlMBean.java | 3 +-
.../endpoints/StreamingHTTPEndpointControl.java | 15 +-
.../StreamingHTTPEndpointControlMBean.java | 5 +-
.../runtime/messaging/log/LogControl.java | 72 +-
.../runtime/messaging/log/LogControlMBean.java | 9 +-
.../runtime/messaging/log/LogManager.java | 100 +--
.../messaging/services/MessageServiceControl.java | 15 +-
.../services/MessageServiceControlMBean.java | 3 +-
.../messaging/services/ServiceAdapterControl.java | 44 +-
.../services/ServiceAdapterControlMBean.java | 3 +-
.../runtime/messaging/services/ServiceControl.java | 79 +-
.../messaging/services/ServiceControlMBean.java | 3 +-
.../messaging/SubscriptionManagerControl.java | 70 +-
.../messaging/SubscriptionManagerControlMBean.java | 3 +-
.../services/messaging/ThrottleManagerControl.java | 97 +--
.../messaging/ThrottleManagerControlMBean.java | 3 +-
.../adapters/ActionScriptAdapterControl.java | 15 +-
.../adapters/ActionScriptAdapterControlMBean.java | 3 +-
.../messaging/adapters/JMSAdapterControl.java | 50 +-
.../messaging/adapters/JMSAdapterControlMBean.java | 3 +-
.../messaging/services/messaging/package-info.java | 2 +-
.../runtime/messaging/services/package-info.java | 2 +-
.../messaging/AbstractConnectionAwareSession.java | 83 +-
.../messaging/AbstractFlexSessionProvider.java | 66 +-
.../flex/messaging/ConnectionAwareSession.java | 19 +-
core/src/main/java/flex/messaging/Destination.java | 260 +++---
.../flex/messaging/DestructibleFlexFactory.java | 6 +-
.../java/flex/messaging/FactoryDestination.java | 240 +++---
.../main/java/flex/messaging/FactoryInstance.java | 69 +-
.../main/java/flex/messaging/FlexComponent.java | 13 +-
.../main/java/flex/messaging/FlexConfigurable.java | 5 +-
core/src/main/java/flex/messaging/FlexContext.java | 149 ++--
core/src/main/java/flex/messaging/FlexFactory.java | 31 +-
.../java/flex/messaging/FlexRemoteCredentials.java | 29 +-
core/src/main/java/flex/messaging/FlexSession.java | 367 +++------
.../messaging/FlexSessionAttributeListener.java | 13 +-
.../flex/messaging/FlexSessionBindingEvent.java | 50 +-
.../flex/messaging/FlexSessionBindingListener.java | 9 +-
.../messaging/FlexSessionConnectivityEvent.java | 17 +-
.../messaging/FlexSessionConnectivityListener.java | 9 +-
.../java/flex/messaging/FlexSessionListener.java | 3 +-
.../java/flex/messaging/FlexSessionManager.java | 173 ++--
.../main/java/flex/messaging/HttpFlexSession.java | 247 ++----
.../flex/messaging/HttpFlexSessionProvider.java | 31 +-
.../main/java/flex/messaging/MessageBroker.java | 905 +++++++-------------
.../java/flex/messaging/MessageBrokerServlet.java | 194 ++---
.../main/java/flex/messaging/MessageClient.java | 418 ++++------
.../java/flex/messaging/MessageClientListener.java | 9 +-
.../java/flex/messaging/MessageDestination.java | 144 ++--
.../main/java/flex/messaging/MessageException.java | 128 ++-
.../java/flex/messaging/MessageRoutedEvent.java | 18 +-
.../java/flex/messaging/MessageRoutedListener.java | 6 +-
.../java/flex/messaging/MessageRoutedNotifier.java | 48 +-
core/src/main/java/flex/messaging/Server.java | 3 +-
.../flex/messaging/ServiceValidationListener.java | 4 +-
core/src/main/java/flex/messaging/VersionInfo.java | 69 +-
.../flex/messaging/client/AsyncPollHandler.java | 7 +-
.../flex/messaging/client/EndpointPushHandler.java | 23 +-
.../messaging/client/EndpointPushNotifier.java | 104 +--
.../java/flex/messaging/client/FlexClient.java | 916 ++++++++-------------
.../client/FlexClientAttributeListener.java | 13 +-
.../messaging/client/FlexClientBindingEvent.java | 52 +-
.../client/FlexClientBindingListener.java | 9 +-
.../flex/messaging/client/FlexClientListener.java | 9 +-
.../flex/messaging/client/FlexClientManager.java | 199 ++---
.../client/FlexClientNotSubscribedException.java | 34 +-
.../client/FlexClientOutboundQueueProcessor.java | 112 +--
.../java/flex/messaging/client/FlushResult.java | 22 +-
.../client/OutboundQueueThrottleManager.java | 74 +-
.../flex/messaging/client/PollFlushResult.java | 43 +-
.../flex/messaging/client/PollWaitListener.java | 9 +-
.../flex/messaging/client/UserAgentSettings.java | 144 ++--
.../flex/messaging/cluster/BroadcastHandler.java | 6 +-
.../main/java/flex/messaging/cluster/Cluster.java | 76 +-
.../flex/messaging/cluster/ClusterException.java | 4 +-
.../flex/messaging/cluster/ClusterManager.java | 292 +++----
.../cluster/ClusterMembershipListener.java | 44 +-
.../java/flex/messaging/cluster/ClusterNode.java | 73 +-
.../flex/messaging/cluster/RemoveNodeListener.java | 4 +-
.../ApacheXPathServerConfigurationParser.java | 50 +-
.../messaging/config/ConfigurationManager.java | 7 +-
.../flex/messaging/config/FactorySettings.java | 38 +-
.../messaging/config/MessageFilterSettings.java | 43 +-
.../messaging/config/MessagingConfiguration.java | 455 ++++------
.../flex/messaging/config/NetworkSettings.java | 47 +-
.../flex/messaging/config/SecuritySettings.java | 40 +-
.../java/flex/messaging/config/ServerSettings.java | 84 +-
.../messaging/config/ServletResourceResolver.java | 75 +-
.../messaging/config/SharedServerSettings.java | 29 +-
.../java/flex/messaging/config/SystemSettings.java | 159 ++--
.../flex/messaging/config/ThrottleSettings.java | 97 +--
.../flex/messaging/config/ValidatorSettings.java | 15 +-
.../config/XPathServerConfigurationParser.java | 53 +-
.../java/flex/messaging/config/package-info.java | 2 +-
.../java/flex/messaging/endpoints/AMFEndpoint.java | 46 +-
.../flex/messaging/endpoints/AbstractEndpoint.java | 603 +++++---------
.../flex/messaging/endpoints/BaseHTTPEndpoint.java | 174 ++--
.../endpoints/BasePollingHTTPEndpoint.java | 187 ++---
.../endpoints/BaseStreamingHTTPEndpoint.java | 456 ++++------
.../endpoints/DuplicateSessionException.java | 14 +-
.../java/flex/messaging/endpoints/Endpoint.java | 108 +--
.../java/flex/messaging/endpoints/Endpoint2.java | 25 +-
.../flex/messaging/endpoints/HTTPEndpoint.java | 58 +-
.../messaging/endpoints/SecureAMFEndpoint.java | 14 +-
.../messaging/endpoints/SecureHTTPEndpoint.java | 14 +-
.../endpoints/SecureStreamingAMFEndpoint.java | 14 +-
.../endpoints/SecureStreamingHTTPEndpoint.java | 14 +-
.../messaging/endpoints/StreamingAMFEndpoint.java | 71 +-
.../messaging/endpoints/StreamingHTTPEndpoint.java | 71 +-
.../flex/messaging/endpoints/amf/AMFFilter.java | 12 +-
.../endpoints/amf/BatchProcessFilter.java | 24 +-
.../flex/messaging/endpoints/amf/LegacyFilter.java | 156 ++--
.../endpoints/amf/MessageBrokerFilter.java | 66 +-
.../endpoints/amf/SerializationFilter.java | 195 ++---
.../messaging/endpoints/amf/SessionFilter.java | 25 +-
.../java/flex/messaging/factories/JavaFactory.java | 123 +--
.../messaging/factories/JavaFactoryInstance.java | 51 +-
.../main/java/flex/messaging/io/AbstractProxy.java | 211 ++---
.../java/flex/messaging/io/ArrayCollection.java | 55 +-
.../src/main/java/flex/messaging/io/ArrayList.java | 14 +-
.../src/main/java/flex/messaging/io/BeanProxy.java | 477 +++++------
.../main/java/flex/messaging/io/ClassAlias.java | 7 +-
.../java/flex/messaging/io/ClassAliasRegistry.java | 42 +-
.../java/flex/messaging/io/DictionaryProxy.java | 47 +-
.../java/flex/messaging/io/ManagedObjectProxy.java | 26 +-
core/src/main/java/flex/messaging/io/MapProxy.java | 106 ++-
.../flex/messaging/io/MessageDeserializer.java | 3 +-
.../java/flex/messaging/io/MessageIOConstants.java | 3 +-
.../java/flex/messaging/io/MessageSerializer.java | 3 +-
.../main/java/flex/messaging/io/ObjectProxy.java | 25 +-
.../java/flex/messaging/io/PageableRowSet.java | 13 +-
.../flex/messaging/io/PageableRowSetProxy.java | 82 +-
.../main/java/flex/messaging/io/PagedRowSet.java | 165 ++--
.../main/java/flex/messaging/io/PropertyProxy.java | 121 +--
.../flex/messaging/io/PropertyProxyRegistry.java | 168 ++--
.../io/RecoverableSerializationException.java | 6 +-
.../flex/messaging/io/SerializationDescriptor.java | 26 +-
.../flex/messaging/io/SerializationException.java | 14 +-
.../java/flex/messaging/io/SerializationProxy.java | 43 +-
.../java/flex/messaging/io/StatusInfoProxy.java | 174 ++--
.../java/flex/messaging/io/ThrowableProxy.java | 11 +-
.../java/flex/messaging/io/TypeMarshaller.java | 11 +-
.../flex/messaging/io/TypeMarshallingContext.java | 101 +--
.../flex/messaging/io/UnknownTypeException.java | 6 +-
.../main/java/flex/messaging/io/amf/ASObject.java | 54 +-
.../flex/messaging/io/amf/AbstractAmfInput.java | 225 +++--
.../flex/messaging/io/amf/AbstractAmfOutput.java | 135 +--
.../java/flex/messaging/io/amf/ActionContext.java | 103 +--
.../java/flex/messaging/io/amf/ActionMessage.java | 43 +-
.../flex/messaging/io/amf/ActionMessageInput.java | 11 +-
.../flex/messaging/io/amf/ActionMessageOutput.java | 12 +-
.../main/java/flex/messaging/io/amf/Amf0Input.java | 147 ++--
.../java/flex/messaging/io/amf/Amf0Output.java | 455 ++++------
.../main/java/flex/messaging/io/amf/Amf3Input.java | 407 ++++-----
.../java/flex/messaging/io/amf/Amf3Output.java | 635 +++++---------
.../main/java/flex/messaging/io/amf/Amf3Types.java | 30 +-
.../src/main/java/flex/messaging/io/amf/AmfIO.java | 75 +-
.../messaging/io/amf/AmfMessageDeserializer.java | 67 +-
.../messaging/io/amf/AmfMessageSerializer.java | 30 +-
.../main/java/flex/messaging/io/amf/AmfTrace.java | 165 ++--
.../main/java/flex/messaging/io/amf/AmfTypes.java | 37 +-
.../java/flex/messaging/io/amf/MessageBody.java | 42 +-
.../java/flex/messaging/io/amf/MessageHeader.java | 27 +-
.../flex/messaging/io/amf/SerializedObject.java | 44 +-
.../java/flex/messaging/io/amf/TraitsInfo.java | 85 +-
.../messaging/io/amf/client/AMFConnection.java | 274 +++---
.../io/amf/client/AMFHeaderProcessor.java | 3 +-
.../client/exceptions/ClientStatusException.java | 44 +-
.../client/exceptions/ServerStatusException.java | 31 +-
.../messaging/io/amf/translator/ASTranslator.java | 26 +-
.../io/amf/translator/TranslationException.java | 12 +-
.../translator/decoder/ActionScriptDecoder.java | 46 +-
.../io/amf/translator/decoder/ArrayDecoder.java | 78 +-
.../io/amf/translator/decoder/BooleanDecoder.java | 25 +-
.../io/amf/translator/decoder/CalendarDecoder.java | 29 +-
.../amf/translator/decoder/CharacterDecoder.java | 29 +-
.../amf/translator/decoder/CollectionDecoder.java | 91 +-
.../io/amf/translator/decoder/DateDecoder.java | 96 +--
.../io/amf/translator/decoder/DecoderFactory.java | 96 +--
.../io/amf/translator/decoder/EnumDecoder.java | 23 +-
.../io/amf/translator/decoder/MapDecoder.java | 53 +-
.../io/amf/translator/decoder/NativeDecoder.java | 8 +-
.../io/amf/translator/decoder/NullDecoder.java | 6 +-
.../io/amf/translator/decoder/NumberDecoder.java | 66 +-
.../decoder/ReferenceAwareArrayDecoder.java | 60 +-
.../decoder/ReferenceAwareCalendarDecoder.java | 9 +-
.../decoder/ReferenceAwareCollectionDecoder.java | 49 +-
.../decoder/ReferenceAwareDateDecoder.java | 9 +-
.../decoder/ReferenceAwareMapDecoder.java | 26 +-
.../decoder/ReferenceAwareTypedObjectDecoder.java | 47 +-
.../io/amf/translator/decoder/StringDecoder.java | 33 +-
.../amf/translator/decoder/TypedObjectDecoder.java | 49 +-
.../java/flex/messaging/io/amfx/AmfxInput.java | 588 +++++--------
.../messaging/io/amfx/AmfxMessageDeserializer.java | 172 ++--
.../messaging/io/amfx/AmfxMessageSerializer.java | 54 +-
.../java/flex/messaging/io/amfx/AmfxOutput.java | 495 ++++-------
.../java/flex/messaging/io/amfx/AmfxTypes.java | 109 ++-
.../java/flex/messaging/log/HTTPRequestLog.java | 116 +--
.../log/LoggingHttpServletRequestWrapper.java | 65 +-
.../java/flex/messaging/log/ServletLogTarget.java | 27 +-
.../flex/messaging/messages/AbstractMessage.java | 339 +++-----
.../messaging/messages/AcknowledgeMessage.java | 28 +-
.../messaging/messages/AcknowledgeMessageExt.java | 17 +-
.../java/flex/messaging/messages/AsyncMessage.java | 48 +-
.../flex/messaging/messages/AsyncMessageExt.java | 15 +-
.../flex/messaging/messages/BatchableMessage.java | 9 +-
.../flex/messaging/messages/CommandMessage.java | 119 ++-
.../flex/messaging/messages/CommandMessageExt.java | 15 +-
.../java/flex/messaging/messages/ErrorMessage.java | 23 +-
.../java/flex/messaging/messages/HTTPMessage.java | 66 +-
.../main/java/flex/messaging/messages/Message.java | 19 +-
.../messaging/messages/MessagePerformanceInfo.java | 111 +--
.../messages/MessagePerformanceUtils.java | 232 ++----
.../java/flex/messaging/messages/RPCMessage.java | 30 +-
.../flex/messaging/messages/RemotingMessage.java | 64 +-
.../java/flex/messaging/messages/SOAPMessage.java | 14 +-
.../java/flex/messaging/messages/SmallMessage.java | 4 +-
.../messaging/security/AppServerLoginCommand.java | 31 +-
.../java/flex/messaging/security/LoginCommand.java | 14 +-
.../flex/messaging/security/LoginCommandExt.java | 11 +-
.../java/flex/messaging/security/LoginManager.java | 131 ++-
.../flex/messaging/security/MessagingSecurity.java | 13 +-
.../messaging/security/PrincipalConverter.java | 5 +-
.../flex/messaging/security/SecurityException.java | 73 +-
.../services/AbstractBootstrapService.java | 230 +++---
.../flex/messaging/services/AbstractService.java | 271 +++---
.../messaging/services/AuthenticationEvent.java | 71 +-
.../messaging/services/AuthenticationListener.java | 5 +-
.../messaging/services/AuthenticationService.java | 136 ++-
.../flex/messaging/services/MessageService.java | 546 +++++-------
.../main/java/flex/messaging/services/Service.java | 5 +-
.../flex/messaging/services/ServiceAdapter.java | 88 +-
.../flex/messaging/services/ServiceException.java | 32 +-
.../services/messaging/MessageFrequency.java | 34 +-
.../services/messaging/MessagingConstants.java | 3 +-
.../services/messaging/RemoteMessageClient.java | 28 +-
.../messaging/RemoteSubscriptionManager.java | 80 +-
.../services/messaging/SubscriptionManager.java | 453 ++++------
.../messaging/services/messaging/Subtopic.java | 94 +--
.../services/messaging/ThrottleManager.java | 167 ++--
.../messaging/adapters/ActionScriptAdapter.java | 36 +-
.../messaging/adapters/AsyncMessageReceiver.java | 20 +-
.../services/messaging/adapters/JMSAdapter.java | 467 ++++-------
.../messaging/adapters/JMSConfigConstants.java | 5 +-
.../services/messaging/adapters/JMSConsumer.java | 164 ++--
.../messaging/adapters/JMSExceptionEvent.java | 23 +-
.../messaging/adapters/JMSExceptionListener.java | 3 +-
.../messaging/adapters/JMSMessageEvent.java | 12 +-
.../messaging/adapters/JMSMessageListener.java | 3 +-
.../services/messaging/adapters/JMSProducer.java | 125 +--
.../services/messaging/adapters/JMSProxy.java | 105 +--
.../messaging/adapters/JMSQueueConsumer.java | 32 +-
.../messaging/adapters/JMSQueueProducer.java | 41 +-
.../services/messaging/adapters/JMSSettings.java | 195 ++---
.../messaging/adapters/JMSTopicConsumer.java | 119 +--
.../messaging/adapters/JMSTopicProducer.java | 43 +-
.../messaging/adapters/MessageReceiver.java | 5 +-
.../messaging/adapters/MessagingAdapter.java | 46 +-
.../MessagingSecurityConstraintManager.java | 61 +-
.../messaging/adapters/SyncMessageReceiver.java | 60 +-
.../services/messaging/selector/JMSSelector.java | 120 ---
.../messaging/selector/JMSSelectorException.java | 35 -
.../services/messaging/selector/package-info.java | 17 -
core/src/main/java/flex/messaging/util/Assert.java | 31 +-
.../flex/messaging/util/AssertionFailedError.java | 10 +-
core/src/main/java/flex/messaging/util/Base64.java | 128 ++-
.../main/java/flex/messaging/util/ClassUtil.java | 170 ++--
.../main/java/flex/messaging/util/DoubleUtil.java | 6 +-
core/src/main/java/flex/messaging/util/Hex.java | 69 +-
.../main/java/flex/messaging/util/MethodKey.java | 53 +-
.../java/flex/messaging/util/MethodMatcher.java | 201 ++---
.../java/flex/messaging/util/RedeployManager.java | 157 ++--
.../flex/messaging/util/SettingsReplaceUtil.java | 197 ++---
.../flex/messaging/util/TimeoutAbstractObject.java | 100 +--
.../java/flex/messaging/util/TimeoutCapable.java | 11 +-
.../java/flex/messaging/util/TimeoutManager.java | 124 ++-
.../flex/messaging/util/ToStringPrettyPrinter.java | 158 ++--
core/src/main/java/flex/messaging/util/Trace.java | 31 +-
.../main/java/flex/messaging/util/URLDecoder.java | 69 +-
.../main/java/flex/messaging/util/URLEncoder.java | 85 +-
.../java/flex/messaging/util/URLEncoderUtil.java | 12 +-
.../java/flex/messaging/util/UUIDGenerator.java | 5 +-
.../java/flex/messaging/util/UserAgentManager.java | 50 +-
.../java/flex/messaging/util/WatchedObject.java | 25 +-
.../src/main/java/flex/messaging/util/XMLUtil.java | 44 +-
.../util/concurrent/DefaultThreadPoolExecutor.java | 80 +-
.../flex/messaging/util/concurrent/Executor.java | 26 +-
.../util/concurrent/FailedExecutionHandler.java | 9 +-
.../validators/DeserializationValidator.java | 11 +-
.../messaging/cluster/SerializationProxyTest.java | 6 +-
.../messaging/config/ConfigurationParserTest.java | 2 +-
.../flex/messaging/config/services/Confirm1a.java | 12 +-
.../flex/messaging/config/services/Confirm1b.java | 12 +-
.../flex/messaging/config/services/Confirm1c.java | 20 +-
.../flex/messaging/config/services/Confirm1d.java | 12 +-
.../flex/messaging/config/services/Confirm1e.java | 12 +-
.../flex/messaging/config/services/Confirm1f.java | 12 +-
.../flex/messaging/config/services/Confirm1g.java | 15 +-
.../flex/messaging/config/services/Confirm1h.java | 15 +-
.../flex/messaging/config/services/Confirm1i.java | 12 +-
.../flex/messaging/config/services/Confirm1j.java | 12 +-
.../messaging/io/amfx/AmfxSerializationTest.java | 8 +-
.../io/amfx/DeserializationConfirmation.java | 219 ++---
.../flex/messaging/io/amfx/amfx_tag/Confirm1a.java | 12 +-
.../flex/messaging/io/amfx/amfx_tag/Confirm1b.java | 12 +-
.../flex/messaging/io/amfx/amfx_tag/Confirm1c.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2a.java | 17 +-
.../messaging/io/amfx/array_tag/Confirm2b.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2c.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2d.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2e.java | 21 +-
.../messaging/io/amfx/array_tag/Confirm2f.java | 29 +-
.../messaging/io/amfx/array_tag/Confirm2g.java | 12 +-
.../messaging/io/amfx/array_tag/Confirm2h.java | 12 +-
.../messaging/io/amfx/array_tag/Confirm2i.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2j.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2k.java | 15 +-
.../messaging/io/amfx/array_tag/Confirm2l.java | 15 +-
.../flex/messaging/io/amfx/body_tag/Confirm3a.java | 12 +-
.../flex/messaging/io/amfx/body_tag/Confirm3b.java | 12 +-
.../flex/messaging/io/amfx/body_tag/Confirm3c.java | 15 +-
.../flex/messaging/io/amfx/body_tag/Confirm3d.java | 15 +-
.../messaging/io/amfx/bytes_tag/Confirm16a.java | 17 +-
.../flex/messaging/io/amfx/date_tag/Confirm4a.java | 12 +-
.../flex/messaging/io/amfx/date_tag/Confirm4b.java | 14 +-
.../flex/messaging/io/amfx/date_tag/Confirm4c.java | 15 +-
.../flex/messaging/io/amfx/date_tag/Confirm4d.java | 15 +-
.../flex/messaging/io/amfx/date_tag/Confirm4e.java | 30 +-
.../flex/messaging/io/amfx/date_tag/Confirm4f.java | 12 +-
.../flex/messaging/io/amfx/date_tag/Confirm4g.java | 15 +-
.../messaging/io/amfx/double_tag/Confirm5a.java | 12 +-
.../messaging/io/amfx/double_tag/Confirm5b.java | 12 +-
.../messaging/io/amfx/double_tag/Confirm5c.java | 12 +-
.../messaging/io/amfx/double_tag/Confirm5d.java | 12 +-
.../messaging/io/amfx/double_tag/Confirm5e.java | 15 +-
.../messaging/io/amfx/double_tag/Confirm5f.java | 15 +-
.../messaging/io/amfx/double_tag/Confirm5g.java | 15 +-
.../messaging/io/amfx/double_tag/Confirm5h.java | 15 +-
.../messaging/io/amfx/false_tag/Confirm6a.java | 12 +-
.../messaging/io/amfx/false_tag/Confirm6b.java | 12 +-
.../messaging/io/amfx/false_tag/Confirm6c.java | 15 +-
.../messaging/io/amfx/false_tag/Confirm6d.java | 18 +-
.../messaging/io/amfx/header_tag/Confirm7a.java | 12 +-
.../messaging/io/amfx/header_tag/Confirm7b.java | 12 +-
.../messaging/io/amfx/header_tag/Confirm7c.java | 15 +-
.../messaging/io/amfx/header_tag/Confirm7d.java | 15 +-
.../flex/messaging/io/amfx/int_tag/Confirm8a.java | 12 +-
.../flex/messaging/io/amfx/int_tag/Confirm8b.java | 12 +-
.../flex/messaging/io/amfx/int_tag/Confirm8c.java | 12 +-
.../flex/messaging/io/amfx/int_tag/Confirm8d.java | 12 +-
.../flex/messaging/io/amfx/int_tag/Confirm8e.java | 15 +-
.../flex/messaging/io/amfx/int_tag/Confirm8f.java | 15 +-
.../flex/messaging/io/amfx/int_tag/Confirm8g.java | 15 +-
.../flex/messaging/io/amfx/null_tag/Confirm9a.java | 12 +-
.../flex/messaging/io/amfx/null_tag/Confirm9b.java | 12 +-
.../flex/messaging/io/amfx/null_tag/Confirm9c.java | 15 +-
.../flex/messaging/io/amfx/null_tag/Confirm9d.java | 20 +-
.../messaging/io/amfx/object_tag/Confirm10a.java | 18 +-
.../messaging/io/amfx/object_tag/Confirm10b.java | 12 +-
.../messaging/io/amfx/object_tag/Confirm10c.java | 37 +-
.../messaging/io/amfx/object_tag/Confirm10d.java | 26 +-
.../messaging/io/amfx/string_tag/Confirm11a.java | 12 +-
.../messaging/io/amfx/string_tag/Confirm11b.java | 14 +-
.../messaging/io/amfx/string_tag/Confirm11c.java | 15 +-
.../messaging/io/amfx/string_tag/Confirm11d.java | 12 +-
.../messaging/io/amfx/string_tag/Confirm11e.java | 30 +-
.../messaging/io/amfx/string_tag/Confirm11f.java | 40 +-
.../messaging/io/amfx/string_tag/Confirm11g.java | 15 +-
.../messaging/io/amfx/string_tag/Confirm11h.java | 15 +-
.../messaging/io/amfx/string_tag/Confirm11i.java | 12 +-
.../messaging/io/amfx/string_tag/Confirm11j.java | 12 +-
.../io/amfx/testtypes/Bleu_dAuvergne.java | 18 +-
.../flex/messaging/io/amfx/testtypes/Cheese.java | 3 +-
.../messaging/io/amfx/testtypes/CowCheese.java | 9 +-
.../messaging/io/amfx/testtypes/EweCheese.java | 9 +-
.../messaging/io/amfx/testtypes/Roquefort.java | 21 +-
.../messaging/io/amfx/traits_tag/Confirm12a.java | 12 +-
.../messaging/io/amfx/traits_tag/Confirm12b.java | 15 +-
.../messaging/io/amfx/true_tag/Confirm13a.java | 12 +-
.../messaging/io/amfx/true_tag/Confirm13b.java | 12 +-
.../messaging/io/amfx/true_tag/Confirm13c.java | 15 +-
.../messaging/io/amfx/true_tag/Confirm13d.java | 18 +-
.../io/amfx/undefined_tag/Confirm14a.java | 12 +-
.../io/amfx/undefined_tag/Confirm14b.java | 12 +-
.../io/amfx/undefined_tag/Confirm14c.java | 15 +-
.../io/amfx/undefined_tag/Confirm14d.java | 18 +-
.../flex/messaging/io/amfx/xml_tag/Confirm15a.java | 19 +-
.../flex/messaging/io/amfx/xml_tag/Confirm15b.java | 19 +-
.../java/flex/messaging/util/UUIDUtilTest.java | 14 +-
.../concurrent/DefaultThreadPoolExecutorTest.java | 95 +--
.../macromedia/qa/metrics/AbstractDatabase.java | 214 ++---
.../src/test/java/macromedia/qa/metrics/Build.java | 48 +-
.../test/java/macromedia/qa/metrics/Metric.java | 48 +-
.../macromedia/qa/metrics/MetricsDatabase.java | 86 +-
.../java/macromedia/qa/metrics/MetricsManager.java | 71 +-
.../java/macromedia/qa/metrics/Persistable.java | 90 +-
.../test/java/macromedia/qa/metrics/Project.java | 46 +-
core/src/test/java/macromedia/qa/metrics/Run.java | 54 +-
.../src/test/java/macromedia/qa/metrics/Value.java | 48 +-
core/src/test/java/macromedia/util/UnitTrace.java | 6 +-
core/src/test/resources/amf_request.xml | 2 +-
.../flex/messaging/config/services/1a.xml | 12 +-
.../flex/messaging/config/services/1b.xml | 22 +-
.../flex/messaging/config/services/1c.xml | 8 +-
.../flex/messaging/config/services/1d.xml | 22 +-
.../flex/messaging/config/services/1e.xml | 12 +-
.../config/services/1e_adapter_include.xml | 2 +-
.../flex/messaging/config/services/1f.xml | 2 +-
.../flex/messaging/config/services/1g.xml | 4 +-
.../flex/messaging/config/services/1h.xml | 8 +-
.../flex/messaging/config/services/1i.xml | 12 +-
.../flex/messaging/config/services/1j.xml | 2 +-
.../services/adapters/1i_adapter_include.xml | 2 +-
.../test/resources/flex/messaging/io/amfx/amfx.xsd | 84 +-
.../flex/messaging/io/amfx/amfx_tag/1a.xml | 2 +-
.../flex/messaging/io/amfx/amfx_tag/1b.xml | 2 +-
.../flex/messaging/io/amfx/amfx_tag/1c.xml | 2 +-
.../flex/messaging/io/amfx/array_tag/2c.xml | 8 +-
.../flex/messaging/io/amfx/array_tag/2d.xml | 14 +-
.../flex/messaging/io/amfx/array_tag/2e.xml | 2 +-
.../flex/messaging/io/amfx/array_tag/2f.xml | 2 +-
.../flex/messaging/io/amfx/array_tag/2i.xml | 8 +-
.../flex/messaging/io/amfx/array_tag/2j.xml | 2 +-
.../flex/messaging/io/amfx/body_tag/3a.xml | 2 +-
.../flex/messaging/io/amfx/body_tag/3c.xml | 4 +-
.../flex/messaging/io/amfx/body_tag/3d.xml | 2 +-
.../flex/messaging/io/amfx/date_tag/4d.xml | 23 +-
.../flex/messaging/io/amfx/date_tag/4e.xml | 4 +-
.../flex/messaging/io/amfx/double_tag/5d.xml | 23 +-
.../flex/messaging/io/amfx/false_tag/6a.xml | 2 +-
.../flex/messaging/io/amfx/false_tag/6c.xml | 6 +-
.../flex/messaging/io/amfx/false_tag/6d.xml | 14 +-
.../flex/messaging/io/amfx/header_tag/7a.xml | 2 +-
.../flex/messaging/io/amfx/header_tag/7d.xml | 2 +-
.../flex/messaging/io/amfx/int_tag/8d.xml | 23 +-
.../flex/messaging/io/amfx/null_tag/9a.xml | 2 +-
.../flex/messaging/io/amfx/null_tag/9c.xml | 6 +-
.../flex/messaging/io/amfx/null_tag/9d.xml | 14 +-
.../flex/messaging/io/amfx/object_tag/10c.xml | 2 +-
.../flex/messaging/io/amfx/object_tag/10d.xml | 2 +-
.../flex/messaging/io/amfx/string_tag/11e.xml | 4 +-
.../flex/messaging/io/amfx/string_tag/11f.xml | 6 +-
.../flex/messaging/io/amfx/string_tag/11g.xml | 2 +-
.../flex/messaging/io/amfx/string_tag/11h.xml | 2 +-
.../flex/messaging/io/amfx/traits_tag/12b.xml | 4 +-
.../flex/messaging/io/amfx/true_tag/13a.xml | 2 +-
.../flex/messaging/io/amfx/true_tag/13c.xml | 6 +-
.../flex/messaging/io/amfx/true_tag/13d.xml | 14 +-
.../flex/messaging/io/amfx/undefined_tag/14a.xml | 2 +-
.../flex/messaging/io/amfx/undefined_tag/14c.xml | 6 +-
.../flex/messaging/io/amfx/undefined_tag/14d.xml | 14 +-
.../flex/messaging/io/amfx/xml_tag/15a.xml | 10 +-
downloads.xml | 357 ++++----
opt/blazeds-spring-boot-starter/README.adoc | 29 +-
opt/blazeds-spring-boot-starter/pom.xml | 51 +-
.../src/main/resources/META-INF/spring.factories | 1 -
opt/build.xml | 203 ++---
opt/oracle/pom.xml | 2 +-
.../messaging/security/OracleLoginCommand.java | 57 +-
.../java/flex/messaging/security/OracleUser.java | 51 +-
opt/pom.xml | 78 +-
opt/tomcat/pom.xml | 40 +-
opt/tomcat/tomcat-4/pom.xml | 51 +-
.../flex/messaging/security/TomcatValve4150.java | 127 ++-
opt/tomcat/tomcat-6/pom.xml | 61 +-
.../java/flex/messaging/security/TomcatValve.java | 109 +--
opt/tomcat/tomcat-7/pom.xml | 51 +-
.../java/flex/messaging/security/Tomcat7Valve.java | 135 ++-
.../flex/messaging/security/tomcat-descriptor.xml | 62 +-
opt/tomcat/tomcat-base/pom.xml | 17 +-
.../java/flex/messaging/security/TomcatLogin.java | 21 +-
.../messaging/security/TomcatLoginCommand.java | 71 +-
.../flex/messaging/security/TomcatLoginHolder.java | 27 +-
opt/weblogic/pom.xml | 2 +-
.../messaging/security/WeblogicLoginCommand.java | 136 ++-
opt/websphere/pom.xml | 2 +-
.../management/WebSphereMBeanServerLocator.java | 32 +-
.../messaging/security/WebSphereLoginCommand.java | 141 ++--
.../concurrent/AsynchBeansWorkManagerExecutor.java | 161 ++--
pom.xml | 727 ++++++++--------
proxy/build.xml | 16 +-
proxy/pom.xml | 72 +-
.../services/HTTPProxyServiceControl.java | 14 +-
.../services/HTTPProxyServiceControlMBean.java | 3 +-
.../services/http/HTTPProxyAdapterControl.java | 19 +-
.../http/HTTPProxyAdapterControlMBean.java | 3 +-
.../services/http/HTTPProxyDestinationControl.java | 127 ++-
.../http/HTTPProxyDestinationControlMBean.java | 26 +-
.../services/http/SOAPProxyAdapterControl.java | 18 +-
.../http/SOAPProxyAdapterControlMBean.java | 3 +-
.../flex/messaging/services/HTTPProxyService.java | 133 ++-
.../services/http/ExternalProxySettings.java | 72 +-
.../http/HTTPConnectionManagerSettings.java | 135 ++-
.../messaging/services/http/HTTPProxyAdapter.java | 229 ++----
.../services/http/HTTPProxyDestination.java | 150 ++--
.../services/http/HostConfigurationSettings.java | 85 +-
.../messaging/services/http/ProtocolFactory.java | 5 +-
.../messaging/services/http/SOAPProxyAdapter.java | 55 +-
.../httpclient/EasySSLProtocolSocketFactory.java | 60 +-
.../http/httpclient/EasyX509TrustManager.java | 76 +-
.../services/http/httpclient/FlexGetMethod.java | 25 +-
.../services/http/httpclient/FlexPostMethod.java | 25 +-
.../services/http/proxy/AccessFilter.java | 20 +-
.../messaging/services/http/proxy/CookieInfo.java | 9 +-
.../messaging/services/http/proxy/ErrorFilter.java | 55 +-
.../services/http/proxy/ProxyConstants.java | 4 +-
.../services/http/proxy/ProxyContext.java | 157 ++--
.../services/http/proxy/ProxyContextFilter.java | 96 +--
.../services/http/proxy/ProxyException.java | 10 +-
.../messaging/services/http/proxy/ProxyFilter.java | 13 +-
.../messaging/services/http/proxy/ProxyUtil.java | 9 +-
.../services/http/proxy/RequestFilter.java | 376 +++------
.../messaging/services/http/proxy/RequestUtil.java | 50 +-
.../services/http/proxy/ResponseFilter.java | 218 ++---
.../services/http/proxy/ResponseUtil.java | 22 +-
.../services/http/proxy/SecurityFilter.java | 129 +--
.../services/http/proxy/SharedProxyContext.java | 67 +-
.../flex/messaging/services/http/proxy/Target.java | 46 +-
remoting/build.xml | 13 +-
remoting/pom.xml | 78 +-
.../messaging/services/RemotingServiceControl.java | 21 +-
.../services/RemotingServiceControlMBean.java | 3 +-
.../remoting/RemotingDestinationControl.java | 70 +-
.../remoting/RemotingDestinationControlMBean.java | 3 +-
.../remoting/adapters/JavaAdapterControl.java | 19 +-
.../remoting/adapters/JavaAdapterControlMBean.java | 3 +-
.../flex/messaging/services/RemotingService.java | 92 +--
.../services/remoting/PageableRowSetCache.java | 64 +-
.../services/remoting/RemotingDestination.java | 49 +-
.../services/remoting/adapters/JavaAdapter.java | 252 +++---
.../remoting/adapters/NoSuchMethodException.java | 10 +-
.../remoting/adapters/NoSuchServiceException.java | 10 +-
.../services/remoting/adapters/RemotingMethod.java | 45 +-
.../messaging/io/amf/client/AMFDataTypeIT.java | 2 +-
.../test/java/flex/messaging/util/TestServer.java | 4 +-
.../flex/messaging/util/TestServerWrapper.java | 8 +-
.../amfclient/AMFConnectionTestService.java | 61 +-
.../java/remoting/amfclient/ClientCustomType.java | 15 +-
.../java/remoting/amfclient/ServerCustomType.java | 17 +-
.../flex/services-config-customized-validation.xml | 7 +-
.../resources/WEB-INF/flex/services-config.xml | 7 +-
sdk/build.xml | 24 +-
src/assembly/assemble-gz.xml | 34 +-
src/assembly/assemble-zip.xml | 34 +-
649 files changed, 16599 insertions(+), 26418 deletions(-)
diff --git a/ApproveBlazeDS.xml b/ApproveBlazeDS.xml
index 2c7bd23..b11276f 100644
--- a/ApproveBlazeDS.xml
+++ b/ApproveBlazeDS.xml
@@ -34,360 +34,365 @@
</condition>
<condition property="isMac" value="mac">
- <os family="mac" />
+ <os family="mac"/>
</condition>
<condition property="isWindows" value="windows">
- <os family="windows" />
+ <os family="windows"/>
</condition>
<condition property="isLinux" value="linux">
- <and>
- <os family="unix" />
- <not>
- <isset property="isMac" />
- </not>
- </and>
+ <and>
+ <os family="unix"/>
+ <not>
+ <isset property="isMac"/>
+ </not>
+ </and>
</condition>
<condition property="package.suffix" value="zip">
- <os family="windows" />
+ <os family="windows"/>
</condition>
- <property name="package.suffix" value="tar.gz" />
-
- <property name="rat.report" value="${basedir}/rat-report.txt"/>
- <property name="apache.rat.jar" value="apache-rat-0.8.jar" />
- <property name="apache.rat.tasks.jar" value="apache-rat-tasks-0.8.jar" />
- <property name="apache.rat.url" value="http://people.apache.org/~aharui/rat" />
-
- <property name="mac.text.display" value="cat" />
- <property name="win.text.display" value="type" />
- <property name="linux.text.display" value="cat" />
-
+ <property name="package.suffix" value="tar.gz"/>
+
+ <property name="rat.report" value="${basedir}/rat-report.txt"/>
+ <property name="apache.rat.jar" value="apache-rat-0.8.jar"/>
+ <property name="apache.rat.tasks.jar" value="apache-rat-tasks-0.8.jar"/>
+ <property name="apache.rat.url" value="http://people.apache.org/~aharui/rat"/>
+
+ <property name="mac.text.display" value="cat"/>
+ <property name="win.text.display" value="type"/>
+ <property name="linux.text.display" value="cat"/>
+
<property file="${basedir}/approveblazeds.properties"/>
<property environment="env"/>
- <property name="build.target" value="main" />
-
- <condition property="do.copy.downloads" >
- <isset property="download.cache.dir" />
- </condition>
-
+ <property name="build.target" value="main"/>
+
+ <condition property="do.copy.downloads">
+ <isset property="download.cache.dir"/>
+ </condition>
+
<fail message="The ANT_HOME environment variable is not set."
- unless="env.ANT_HOME"/>
-
- <available file="${env.FLEX_HOME}"
- type="dir"
- property="FLEX_HOME" value="${env.FLEX_HOME}" />
+ unless="env.ANT_HOME"/>
+
+ <available file="${env.FLEX_HOME}"
+ type="dir"
+ property="FLEX_HOME" value="${env.FLEX_HOME}"/>
<fail message="The FLEX_HOME property is not set in environment or command-line."
- unless="FLEX_HOME"/>
-
- <available file="${env.AIR_HOME}"
- type="dir"
- property="AIR_HOME" value="${env.AIR_HOME}" />
+ unless="FLEX_HOME"/>
+
+ <available file="${env.AIR_HOME}"
+ type="dir"
+ property="AIR_HOME" value="${env.AIR_HOME}"/>
<fail message="The AIR_HOME property is not set in environment or command-line."
- unless="AIR_HOME"/>
-
+ unless="AIR_HOME"/>
+
<available file="${env.ANT_HOME}/lib/${apache.rat.jar}"
- type="file"
- property="apache.rat.found"/>
+ type="file"
+ property="apache.rat.found"/>
<available file="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}"
- type="file"
- property="apache.rat.tasks.found"/>
-
+ type="file"
+ property="apache.rat.tasks.found"/>
+
<fail message="The release version is not set. Specify -Drelease.version=<release version (e.g. 3.1, 3.2, etc)>"
- unless="release.version"/>
-
+ unless="release.version"/>
+
<fail message="The folder number is not set. Specify -Dfolder.number=<folder number (e.g. 1001, 1002, etc)>"
- unless="folder.number"/>
-
- <property name="package.url.base" value="://repository.apache.org/content/repositories/orgapacheflex-${folder.number}/org/apache/flex/blazeds" />
- <property name="package.url.path" value="https${package.url.base}/blazeds/${release.version}" />
- <property name="package.url.name" value="blazeds-${release.version}-source-release" />
-
+ unless="folder.number"/>
+
+ <property name="package.url.base"
+ value="://repository.apache.org/content/repositories/orgapacheflex-${folder.number}/org/apache/flex/blazeds"/>
+ <property name="package.url.path" value="https${package.url.base}/blazeds/${release.version}"/>
+ <property name="package.url.name" value="blazeds-${release.version}-source-release"/>
+
<condition property="zip.compressed">
- <equals arg1="zip" arg2="${package.suffix}" />
+ <equals arg1="zip" arg2="${package.suffix}"/>
</condition>
-
- <target name="display-text-mac" if="isMac">
- <echo>========================= Begin ${file} ==============================</echo>
- <exec executable="${mac.text.display}" >
- <arg value="${file}" />
- </exec>
- <echo>========================= End ${file} ==============================</echo>
- </target>
- <target name="display-text-win" if="isWindows">
- <pathconvert targetos="windows" property="winfile">
- <path path="${file}" />
- </pathconvert>
- <echo>========================= Begin ${winfile} ==============================</echo>
- <exec executable="cmd.exe" >
- <arg value="/c" />
- <arg value="${win.text.display}" />
- <arg value="${winfile}" />
- </exec>
- <echo>========================= End ${winfile} ==============================</echo>
- </target>
- <target name="display-text-linux" if="isLinux">
- <echo>========================= Begin ${file} ==============================</echo>
- <exec executable="${linux.text.display}" >
- <arg value="${file}" />
- </exec>
- <echo>========================= End ${file} ==============================</echo>
- </target>
-
- <target name="install-rat" depends="install-rat.jar,install-rat.tasks.jar" />
- <target name="install-rat.jar" unless="apache.rat.found">
- <get src="${apache.rat.url}/${apache.rat.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.jar}" />
- </target>
- <target name="install-rat.tasks.jar" unless="apache.rat.tasks.found">
- <get src="${apache.rat.url}/${apache.rat.tasks.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}" />
- </target>
-
+
+ <target name="display-text-mac" if="isMac">
+ <echo>========================= Begin ${file} ==============================</echo>
+ <exec executable="${mac.text.display}">
+ <arg value="${file}"/>
+ </exec>
+ <echo>========================= End ${file} ==============================</echo>
+ </target>
+ <target name="display-text-win" if="isWindows">
+ <pathconvert targetos="windows" property="winfile">
+ <path path="${file}"/>
+ </pathconvert>
+ <echo>========================= Begin ${winfile} ==============================</echo>
+ <exec executable="cmd.exe">
+ <arg value="/c"/>
+ <arg value="${win.text.display}"/>
+ <arg value="${winfile}"/>
+ </exec>
+ <echo>========================= End ${winfile} ==============================</echo>
+ </target>
+ <target name="display-text-linux" if="isLinux">
+ <echo>========================= Begin ${file} ==============================</echo>
+ <exec executable="${linux.text.display}">
+ <arg value="${file}"/>
+ </exec>
+ <echo>========================= End ${file} ==============================</echo>
+ </target>
+
+ <target name="install-rat" depends="install-rat.jar,install-rat.tasks.jar"/>
+ <target name="install-rat.jar" unless="apache.rat.found">
+ <get src="${apache.rat.url}/${apache.rat.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.jar}"/>
+ </target>
+ <target name="install-rat.tasks.jar" unless="apache.rat.tasks.found">
+ <get src="${apache.rat.url}/${apache.rat.tasks.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}"/>
+ </target>
+
<target name="rat-taskdef" description="Rat taskdef">
<typedef resource="org/apache/rat/anttasks/antlib.xml"
- uri="antlib:org.apache.rat.anttasks"
- classpathref="anttask.classpath"/>
+ uri="antlib:org.apache.rat.anttasks"
+ classpathref="anttask.classpath"/>
+ </target>
+
+ <target name="main"
+ depends="install-rat,download,check-sigs,uncompress,rat-check,check-notices,binaries,build,approve"
+ description="Perform required release approval steps">
</target>
- <target name="main" depends="install-rat,download,check-sigs,uncompress,rat-check,check-notices,binaries,build,approve" description="Perform required release approval steps">
+ <target name="main-no-download"
+ depends="install-rat,check-sigs,uncompress,rat-check,check-notices,binaries,build,approve"
+ description="Perform required release approval steps">
</target>
-
- <target name="main-no-download" depends="install-rat,check-sigs,uncompress,rat-check,check-notices,binaries,build,approve" description="Perform required release approval steps">
+
+ <target name="test">
+ <echo>${rat.report}.bin.txt</echo>
+ <replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
+ </target>
+
+ <target name="display-text">
+ <antcall target="display-text-mac"/>
+ <antcall target="display-text-win"/>
+ <antcall target="display-text-linux"/>
</target>
-
- <target name="test" >
- <echo>${rat.report}.bin.txt</echo>
- <replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
+
+ <target name="display-text-test">
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/rat-report.txt"/>
+ </antcall>
</target>
-
- <target name="display-text" >
- <antcall target="display-text-mac" />
- <antcall target="display-text-win" />
- <antcall target="display-text-linux" />
- </target>
-
- <target name="display-text-test" >
- <antcall target="display-text" >
- <param name="file" value="${basedir}/rat-report.txt" />
- </antcall>
- </target>
-
+
<target name="download" depends="download-asc" description="download the release package">
<get src="${package.url.path}/${package.url.name}.${package.suffix}"
- dest="${basedir}/${package.url.name}.${package.suffix}" />
+ dest="${basedir}/${package.url.name}.${package.suffix}"/>
<get src="${package.url.path}/${package.url.name}.${package.suffix}.md5"
- dest="${basedir}/${package.url.name}.${package.suffix}.md5" />
+ dest="${basedir}/${package.url.name}.${package.suffix}.md5"/>
</target>
-
+
<target name="download-asc" unless="no.asc" description="download the release package">
<get src="${package.url.path}/${package.url.name}.${package.suffix}.asc"
- dest="${basedir}/${package.url.name}.${package.suffix}.asc" />
+ dest="${basedir}/${package.url.name}.${package.suffix}.asc"/>
</target>
<target name="check-md5" description="check md5">
<echo message="Checking MD5..."/>
- <replace file="${basedir}/${package.url.name}.${package.suffix}.md5"
- token=" " />
- <checksum file="${basedir}/${package.url.name}.${package.suffix}" algorithm="md5" verifyproperty="md5.ok" />
+ <replace file="${basedir}/${package.url.name}.${package.suffix}.md5"
+ token=" "/>
+ <checksum file="${basedir}/${package.url.name}.${package.suffix}" algorithm="md5" verifyproperty="md5.ok"/>
<condition property="MD5Invalid">
- <not>
- <equals arg1="${md5.ok}" arg2="true" />
- </not>
+ <not>
+ <equals arg1="${md5.ok}" arg2="true"/>
+ </not>
</condition>
- <fail message="MD5 checksum did not match" if="MD5Invalid" />
+ <fail message="MD5 checksum did not match" if="MD5Invalid"/>
</target>
<target name="check-sigs" depends="check-md5" unless="no.asc" description="check md5 and gpg sigs">
- <exec executable="gpg" failonerror="true">
- <arg value="--verify" />
- <arg value="${basedir}/${package.url.name}.${package.suffix}.asc" />
- <arg value="${basedir}/${package.url.name}.${package.suffix}" />
- </exec>
+ <exec executable="gpg" failonerror="true">
+ <arg value="--verify"/>
+ <arg value="${basedir}/${package.url.name}.${package.suffix}.asc"/>
+ <arg value="${basedir}/${package.url.name}.${package.suffix}"/>
+ </exec>
</target>
- <target name="uncompress" depends="pre-clean, untar-file, unzip-file" />
+ <target name="uncompress" depends="pre-clean, untar-file, unzip-file"/>
+
+ <target name="pre-clean" description="remove old uncompressed package">
+ <delete dir="${basedir}/${package.url.name}" failonerror="false"/>
+ </target>
- <target name="pre-clean" description="remove old uncompressed package" >
- <delete dir="${basedir}/${package.url.name}" failonerror="false" />
- </target>
-
<target name="untar-file" unless="zip.compressed" description="Untars zipFile">
<untar src="${basedir}/${package.url.name}.${package.suffix}"
- dest="${basedir}/${package.url.name}" compression="gzip"/>
+ dest="${basedir}/${package.url.name}" compression="gzip"/>
</target>
<target name="unzip-file" if="zip.compressed" description="Unzips zipFile">
<unzip src="${basedir}/${package.url.name}.${package.suffix}"
- dest="${basedir}/${package.url.name}"/>
+ dest="${basedir}/${package.url.name}"/>
</target>
-
+
<target name="binaries" if="isMac">
<get src="http${package.url.base}/"
- dest="${basedir}/folderlist.txt" />
+ dest="${basedir}/folderlist.txt"/>
<!-- remove everything up to 'Parent Directory' -->
<replaceregexp file="${basedir}/folderlist.txt" match=".*Parent Directory" replace=""
- flags="s" byline="false"/>
+ flags="s" byline="false"/>
<!-- remove everything except the text after an href -->
<replaceregexp file="${basedir}/folderlist.txt" match="(.*)href=(.*)>(.*)</a" replace="\3"
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove everything inside single line td's -->
<replaceregexp file="${basedir}/folderlist.txt" match="<td.*</td>" replace=""
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove everything all other html tags -->
<replaceregexp file="${basedir}/folderlist.txt" match="<.*>" replace=""
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove everything up to -->
<replaceregexp file="${basedir}/folderlist.txt" match="&nbsp;" replace=""
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove all whitespace -->
<replaceregexp file="${basedir}/folderlist.txt" match="\s" replace=""
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove blazeds folder -->
<replaceregexp file="${basedir}/folderlist.txt" match="blazeds/>" replace=""
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove opt folder -->
<replaceregexp file="${basedir}/folderlist.txt" match="flex-messaging-opt/>" replace=""
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- replace trailing /> with commas -->
<replaceregexp file="${basedir}/folderlist.txt" match="/>" replace=","
- flags="g" byline="false"/>
+ flags="g" byline="false"/>
<!-- remove trailing comma -->
<replaceregexp file="${basedir}/folderlist.txt" match=",$" replace=""
- flags="m" byline="false"/>
-
- <antcall target="examine-jars" />
+ flags="m" byline="false"/>
+
+ <antcall target="examine-jars"/>
</target>
<!-- how to do tar and sort on Windows? -->
<target name="examine-jars" if="isMac">
<!-- comma delimited list, no spaces, not one file per line -->
- <copy file="folderlist.txt" tofile="loop.txt" />
- <ant antfile="ApproveBlazeDS.xml" target="loopOnce" inheritAll="false" />
+ <copy file="folderlist.txt" tofile="loop.txt"/>
+ <ant antfile="ApproveBlazeDS.xml" target="loopOnce" inheritAll="false"/>
</target>
- <target name="loopOnce" >
+ <target name="loopOnce">
<!-- make a copy of the list so we can munge it to
get the first item in the list -->
- <delete file="loop1.txt" />
- <copy file="loop.txt" tofile="loop1.txt" />
- <loadfile srcFile="loop.txt" property="checkiflast" />
+ <delete file="loop1.txt"/>
+ <copy file="loop.txt" tofile="loop1.txt"/>
+ <loadfile srcFile="loop.txt" property="checkiflast"/>
<condition property="islast" value="true">
<not>
- <contains string="${checkiflast}" substring="," />
+ <contains string="${checkiflast}" substring=","/>
</not>
</condition>
- <antcall target="notlast" />
- <antcall target="lastone" />
+ <antcall target="notlast"/>
+ <antcall target="lastone"/>
</target>
<target name="notlast" unless="islast">
- <loadfile srcFile="loop1.txt" property="echoFile" />
- <replaceregexp file="loop1.txt" match="^(.*),(.*)" replace="\2" />
- <loadfile srcFile="loop1.txt" property="thisFile" />
- <antcall target="jar-check" />
- <replaceregexp file="loop.txt" match="^(.*),(.*)" replace="\1" />
+ <loadfile srcFile="loop1.txt" property="echoFile"/>
+ <replaceregexp file="loop1.txt" match="^(.*),(.*)" replace="\2"/>
+ <loadfile srcFile="loop1.txt" property="thisFile"/>
+ <antcall target="jar-check"/>
+ <replaceregexp file="loop.txt" match="^(.*),(.*)" replace="\1"/>
<ant antfile="ApproveBlazeDS.xml" target="loopOnce" inheritAll="false"/>
</target>
<target name="lastone" if="islast">
- <loadfile srcFile="loop1.txt" property="thisFile" />
- <antcall target="jar-check" />
- <delete file="loop.txt" />
- <delete file="loop1.txt" />
+ <loadfile srcFile="loop1.txt" property="thisFile"/>
+ <antcall target="jar-check"/>
+ <delete file="loop.txt"/>
+ <delete file="loop1.txt"/>
</target>
- <target name="jar-check" >
- <delete dir="${basedir}/jar" failonerror="false" />
- <delete dir="${basedir}/${thisFile}.jar" failonerror="false" />
- <mkdir dir="${basedir}/jar" />
+ <target name="jar-check">
+ <delete dir="${basedir}/jar" failonerror="false"/>
+ <delete dir="${basedir}/${thisFile}.jar" failonerror="false"/>
+ <mkdir dir="${basedir}/jar"/>
<get src="https${package.url.base}/${thisFile}/${release.version}/${thisFile}-${release.version}.jar"
- dest="${basedir}/${thisFile}.jar" />
+ dest="${basedir}/${thisFile}.jar"/>
<get src="https${package.url.base}/${thisFile}/${release.version}/${thisFile}-${release.version}.jar.asc"
- dest="${basedir}/${thisFile}.jar.asc" />
+ dest="${basedir}/${thisFile}.jar.asc"/>
<get src="https${package.url.base}/${thisFile}/${release.version}/${thisFile}-${release.version}.jar.md5"
- dest="${basedir}/${thisFile}.jar.md5" />
+ dest="${basedir}/${thisFile}.jar.md5"/>
<echo message="Checking MD5..."/>
<replace file="${basedir}/${thisFile}.jar.md5"
- token=" " />
- <checksum file="${basedir}/${thisFile}.jar" algorithm="md5" verifyproperty="jar.md5.ok" />
+ token=" "/>
+ <checksum file="${basedir}/${thisFile}.jar" algorithm="md5" verifyproperty="jar.md5.ok"/>
<condition property="JARMD5Invalid">
<not>
- <equals arg1="${jar.md5.ok}" arg2="true" />
+ <equals arg1="${jar.md5.ok}" arg2="true"/>
</not>
</condition>
- <fail message="MD5 checksum did not match" if="JARMD5Invalid" />
+ <fail message="MD5 checksum did not match" if="JARMD5Invalid"/>
<exec executable="gpg" failonerror="true">
- <arg value="--verify" />
- <arg value="${basedir}/${thisFile}.jar.asc" />
- <arg value="${basedir}/${thisFile}.jar" />
+ <arg value="--verify"/>
+ <arg value="${basedir}/${thisFile}.jar.asc"/>
+ <arg value="${basedir}/${thisFile}.jar"/>
</exec>
- <unjar src="${basedir}/${thisFile}.jar" dest="${basedir}/jar" />
+ <unjar src="${basedir}/${thisFile}.jar" dest="${basedir}/jar"/>
<exec executable="tar" output="${basedir}/jarclasses.txt">
- <arg value="tf" />
- <arg value="${basedir}/${thisFile}.jar" />
+ <arg value="tf"/>
+ <arg value="${basedir}/${thisFile}.jar"/>
</exec>
<replaceregexp file="${basedir}/jarclasses.txt" match="(.*)/(.*)" replace="\1" flags="m" byline="true"/>
<exec executable="sort" output="${basedir}/jarpaths.txt">
- <arg value="-u" />
- <arg value="${basedir}/jarclasses.txt" />
+ <arg value="-u"/>
+ <arg value="${basedir}/jarclasses.txt"/>
</exec>
- <antcall target="display-text" >
- <param name="file" value="${basedir}/jarpaths.txt" />
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/jarpaths.txt"/>
</antcall>
<input
- message="Above is the list of folders in this ${thisFile}.
Folder names can sometimes indicate presence of third-party content that needs to be in LICENSE and/or NOTICE files.
Press the Enter key to see the LICENSE for this jar."/>
-
+ message="Above is the list of folders in this ${thisFile}.
Folder names can sometimes indicate presence of third-party content that needs to be in LICENSE and/or NOTICE files.
Press the Enter key to see the LICENSE for this jar."/>
+
<fail message="LICENSE not in ${basedir}/${thisFile}.jar">
<condition>
<not>
- <available file="${basedir}/jar/META-INF/LICENSE" />
+ <available file="${basedir}/jar/META-INF/LICENSE"/>
</not>
</condition>
</fail>
<fail message="NOTICE not in ${basedir}/${thisFile}.jar">
<condition>
<not>
- <available file="${basedir}/jar/META-INF/NOTICE" />
+ <available file="${basedir}/jar/META-INF/NOTICE"/>
</not>
</condition>
</fail>
- <antcall target="display-text" >
- <param name="file" value="${basedir}/jar/META-INF/LICENSE" />
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/jar/META-INF/LICENSE"/>
</antcall>
<input
- message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="jar.license.ok"/>
+ message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="jar.license.ok"/>
<fail message="LICENSE for ${basedir}/${thisFile}.jar not correct">
<condition>
<not>
- <equals arg1="${jar.license.ok}" arg2="y" />
+ <equals arg1="${jar.license.ok}" arg2="y"/>
</not>
</condition>
</fail>
- <antcall target="display-text" >
- <param name="file" value="${basedir}/jar/META-INF/NOTICE" />
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/jar/META-INF/NOTICE"/>
</antcall>
<input
- message="Check the NOTICE for required notices from third-parties. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="jar.notice.ok"/>
+ message="Check the NOTICE for required notices from third-parties. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="jar.notice.ok"/>
<fail message="NOTICE for ${basedir}/${thisFile}.jar not correct">
<condition>
<not>
- <equals arg1="${jar.notice.ok}" arg2="y" />
+ <equals arg1="${jar.notice.ok}" arg2="y"/>
</not>
</condition>
</fail>
-
+
</target>
- <target name="rat-check" >
+ <target name="rat-check">
<echo message="Checking files at ${basedir}/${package.url.name}, report is ${rat.report}"/>
<rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
- reportFile="${rat.report}">
+ reportFile="${rat.report}">
<fileset dir="${basedir}/${package.url.name}">
<!-- exclude media (png, gif, jpg, mp3, flv) -->
<exclude name="**/*.png"/>
@@ -397,152 +402,153 @@
<exclude name="**/*.flv"/>
<exclude name="installer/build.number"/>
<exclude name="**/swfobject.js"/>
- <exclude name="**/DoNotDeleteUntilFile.txt" />
+ <exclude name="**/DoNotDeleteUntilFile.txt"/>
<exclude name="CONTRIBUTORS"/>
<exclude name="CONTRIBUTING"/>
</fileset>
</rat:report>
- <antcall target="display-text" >
- <param name="file" value="${rat.report}" />
+ <antcall target="display-text">
+ <param name="file" value="${rat.report}"/>
</antcall>
<input
- message="Check that there are no unknown or unapproved licenses or archives. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="rat.license.ok"/>
- <echo>filtering out AL files to make it easier to see binary files</echo>
- <copy file="${rat.report}" tofile="${rat.report}.bin.txt" />
+ message="Check that there are no unknown or unapproved licenses or archives. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="rat.license.ok"/>
+ <echo>filtering out AL files to make it easier to see binary files</echo>
+ <copy file="${rat.report}" tofile="${rat.report}.bin.txt"/>
<replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="__AL" byline="true"/>
<replaceregexp file="${rat.report}.bin.txt" flags="gs" match="__AL." replace="" byline="false"/>
- <antcall target="display-text" >
- <param name="file" value="${rat.report}.bin.txt" />
+ <antcall target="display-text">
+ <param name="file" value="${rat.report}.bin.txt"/>
</antcall>
<input
- message="Check that there are no unexpected binaries. Is it ok?"
- validargs="y,n"
- defaultvalue="n"
- addproperty="rat.binaries.ok"/>
+ message="Check that there are no unexpected binaries. Is it ok?"
+ validargs="y,n"
+ defaultvalue="n"
+ addproperty="rat.binaries.ok"/>
</target>
- <target name="check-notices" description="open each notice file for review, grep for a few things" >
+ <target name="check-notices" description="open each notice file for review, grep for a few things">
<fail message="README not in package">
- <condition>
- <not>
- <available file="${basedir}/${package.url.name}/blazeds-${release.version}/README" />
- </not>
- </condition>
+ <condition>
+ <not>
+ <available file="${basedir}/${package.url.name}/blazeds-${release.version}/README"/>
+ </not>
+ </condition>
</fail>
<fail message="RELEASE_NOTES not in package">
- <condition>
- <not>
- <available file="${basedir}/${package.url.name}/blazeds-${release.version}/RELEASE_NOTES" />
- </not>
- </condition>
+ <condition>
+ <not>
+ <available file="${basedir}/${package.url.name}/blazeds-${release.version}/RELEASE_NOTES"/>
+ </not>
+ </condition>
</fail>
<fail message="NOTICE not in package">
- <condition>
- <not>
- <available file="${basedir}/${package.url.name}/blazeds-${release.version}/NOTICE" />
- </not>
- </condition>
+ <condition>
+ <not>
+ <available file="${basedir}/${package.url.name}/blazeds-${release.version}/NOTICE"/>
+ </not>
+ </condition>
</fail>
<fail message="LICENSE not in package">
- <condition>
- <not>
- <available file="${basedir}/${package.url.name}/blazeds-${release.version}/LICENSE" />
- </not>
- </condition>
+ <condition>
+ <not>
+ <available file="${basedir}/${package.url.name}/blazeds-${release.version}/LICENSE"/>
+ </not>
+ </condition>
</fail>
- <antcall target="display-text" >
- <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/README" />
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/README"/>
</antcall>
- <input
- message="Check the README for version numbers, spelling, grammar, accuracy. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="readme.ok"/>
-
- <antcall target="display-text" >
- <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/RELEASE_NOTES" />
+ <input
+ message="Check the README for version numbers, spelling, grammar, accuracy. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="readme.ok"/>
+
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/RELEASE_NOTES"/>
</antcall>
- <input
- message="Check the RELEASE_NOTES for copyright years, spelling, grammar, accuracy. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="releasenotes.ok"/>
-
- <antcall target="display-text" >
- <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/NOTICE" />
+ <input
+ message="Check the RELEASE_NOTES for copyright years, spelling, grammar, accuracy. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="releasenotes.ok"/>
+
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/NOTICE"/>
</antcall>
- <input
- message="Check the NOTICE for required notices from third-parties. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="notice.ok"/>
-
- <antcall target="display-text" >
- <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/LICENSE" />
+ <input
+ message="Check the NOTICE for required notices from third-parties. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="notice.ok"/>
+
+ <antcall target="display-text">
+ <param name="file" value="${basedir}/${package.url.name}/blazeds-${release.version}/LICENSE"/>
</antcall>
- <input
- message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
- validargs="y,n"
- defaultvalue="y"
- addproperty="license.ok"/>
+ <input
+ message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
+ validargs="y,n"
+ defaultvalue="y"
+ addproperty="license.ok"/>
</target>
<target name="build" depends="copy.downloads">
- <input
- message="The final step is to run the build and any tests the build script runs. This can take several minutes. Press y to start the build."
- validargs="y"
- defaultvalue="y" />
- <exec dir="${basedir}/${package.url.name}/blazeds-${release.version}" executable="mvn" >
- <arg value="install" />
+ <input
+ message="The final step is to run the build and any tests the build script runs. This can take several minutes. Press y to start the build."
+ validargs="y"
+ defaultvalue="y"/>
+ <exec dir="${basedir}/${package.url.name}/blazeds-${release.version}" executable="mvn">
+ <arg value="install"/>
</exec>
</target>
- <target name="copy.downloads" if="${do.copy.downloads}" description="instead of actually downloading all of the dependencies, you can save lots of time by just copying from some other folder in some other SDK.">
- <echo>Copying downloads</echo>
- <copy todir="${basedir}/${package.url.name}/in" >
- <fileset dir="${download.cache.dir}" />
- </copy>
+ <target name="copy.downloads" if="${do.copy.downloads}"
+ description="instead of actually downloading all of the dependencies, you can save lots of time by just copying from some other folder in some other SDK.">
+ <echo>Copying downloads</echo>
+ <copy todir="${basedir}/${package.url.name}/in">
+ <fileset dir="${download.cache.dir}"/>
+ </copy>
+ </target>
+
+ <target name="approve">
+ <condition property="vote" value="+1">
+ <and>
+ <equals arg1="${rat.license.ok}" arg2="y"/>
+ <equals arg1="${rat.binaries.ok}" arg2="y"/>
+ <equals arg1="${readme.ok}" arg2="y"/>
+ <equals arg1="${releasenotes.ok}" arg2="y"/>
+ <equals arg1="${notice.ok}" arg2="y"/>
+ <equals arg1="${license.ok}" arg2="y"/>
+ </and>
+ </condition>
+ <property name="vote" value="-1"/>
+ <echo>
+ ${vote}
+ Package ${package.url.path}/${package.url.name}.${package.suffix}
+ Java ${ant.java.version}
+ OS: ${os.name} ${os.arch} ${os.version}
+ Source kit signatures match: y
+ Source kit builds: y
+ README is ok: ${readme.ok}
+ RELEASE_NOTES is ok: ${releasenotes.ok}
+ NOTICE is ok: ${notice.ok}
+ LICENSE is ok: ${license.ok}
+ No unapproved licenses or files in jars: y
+ No unapproved licenses or archives: ${rat.license.ok}
+ No unapproved binaries: ${rat.binaries.ok}
+ </echo>
+ <fail>
+ <condition>
+ <equals arg1="-1" arg2="${vote}"/>
+ </condition>
+ </fail>
+ <antcall target="no-asc"/>
+ </target>
+
+ <target name="no-asc" if="no.asc">
+ <echo>PGP signature not checked</echo>
</target>
-
- <target name="approve" >
- <condition property="vote" value="+1">
- <and>
- <equals arg1="${rat.license.ok}" arg2="y" />
- <equals arg1="${rat.binaries.ok}" arg2="y" />
- <equals arg1="${readme.ok}" arg2="y" />
- <equals arg1="${releasenotes.ok}" arg2="y" />
- <equals arg1="${notice.ok}" arg2="y" />
- <equals arg1="${license.ok}" arg2="y" />
- </and>
- </condition>
- <property name="vote" value="-1" />
- <echo>
-${vote}
-Package ${package.url.path}/${package.url.name}.${package.suffix}
-Java ${ant.java.version}
-OS: ${os.name} ${os.arch} ${os.version}
-Source kit signatures match: y
-Source kit builds: y
-README is ok: ${readme.ok}
-RELEASE_NOTES is ok: ${releasenotes.ok}
-NOTICE is ok: ${notice.ok}
-LICENSE is ok: ${license.ok}
-No unapproved licenses or files in jars: y
-No unapproved licenses or archives: ${rat.license.ok}
-No unapproved binaries: ${rat.binaries.ok}
- </echo>
- <fail>
- <condition>
- <equals arg1="-1" arg2="${vote}"/>
- </condition>
- </fail>
- <antcall target="no-asc" />
- </target>
-
- <target name="no-asc" if="no.asc" >
- <echo>PGP signature not checked</echo>
- </target>
</project>
diff --git a/README b/README
index 1809f55..2086c9f 100644
--- a/README
+++ b/README
@@ -98,27 +98,27 @@ Using the Binary Distribution
version of Apache BlazeDS will automatically be downloaded.
<dependency>
- <groupId>org.apache.flex.blazeds</groupId>
+ <groupId>org.apache.flex.blazeds</groupId>
<artifactId>flex-messaging-common</artifactId>
<version>4.7.3</version>
</dependency>
<dependency>
- <groupId>org.apache.flex.blazeds</groupId>
+ <groupId>org.apache.flex.blazeds</groupId>
<artifactId>flex-messaging-core</artifactId>
<version>4.7.3</version>
</dependency>
<dependency>
- <groupId>org.apache.flex.blazeds</groupId>
+ <groupId>org.apache.flex.blazeds</groupId>
<artifactId>flex-messaging-opt</artifactId>
<version>4.7.3</version>
</dependency>
<dependency>
- <groupId>org.apache.flex.blazeds</groupId>
+ <groupId>org.apache.flex.blazeds</groupId>
<artifactId>flex-messaging-proxy</artifactId>
<version>4.7.3</version>
</dependency>
<dependency>
- <groupId>org.apache.flex.blazeds</groupId>
+ <groupId>org.apache.flex.blazeds</groupId>
<artifactId>flex-messaging-remoting</artifactId>
<version>4.7.3</version>
</dependency>
diff --git a/archetypes/blazeds-spring-boot-archetype/README.md b/archetypes/blazeds-spring-boot-archetype/README.md
index 453caf8..9d42772 100644
--- a/archetypes/blazeds-spring-boot-archetype/README.md
+++ b/archetypes/blazeds-spring-boot-archetype/README.md
@@ -1,24 +1,49 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ -->
# Usage
## Create a new project using the blazeds-spring-boot-archetype
-Using the maven-archetype-plugin it is easy to generate a new project utilizing Spring-Boot to setup a BlazeDS server in order to get started with BlazeDS almost instantly.
+Using the maven-archetype-plugin it is easy to generate a new project utilizing Spring-Boot to setup a BlazeDS server in
+order to get started with BlazeDS almost instantly.
In order to creat such a project, you nee to execute the following command:
+
```
mvn archetype:generate -DarchetypeGroupId=org.apache.flex.blazeds -DarchetypeArtifactId=blazeds-spring-boot-example-archetype -DarchetypeVersion=4.7.3-SNAPSHOT
```
+
The archetype-plugin will ask you for a groupId, artifactId, version and package name.
-The first are used to fill the maven coordinates in the generated pom and the package will be used to set the package the generated classes are located in.
+The first are used to fill the maven coordinates in the generated pom and the package will be used to set the package
+the generated classes are located in.
## Run the generated application
After having generated your application, just start it by executing the following command:
+
```
mvn spring-boot:run
```
+
The output should be something like this:
+
```
[INFO] Scanning for projects...
[WARNING]
@@ -102,7 +127,9 @@ The output should be something like this:
## Communicating with the BlazeDS server from a Flex client
-In order to communicate with the BlazeDS server, you need to define your Remote object by providing the `endpoint` and `destination` attributes.
+In order to communicate with the BlazeDS server, you need to define your Remote object by providing the `endpoint`
+and `destination` attributes.
+
```
<fx:Declarations>
<s:RemoteObject id="exampleService"
@@ -113,6 +140,10 @@ In order to communicate with the BlazeDS server, you need to define your Remote
</s:RemoteObject>
</fx:Declarations>
```
-Take care that the `destination` attribute matches exaclty the name you gave the service using the `@Service` annotation and that the service is also annotated with `@RemotingDestination`
-The `@Service` annotation gives the service a name in the Spring context and would be available under that name inside the Spring context. The `@RemotingDestination` annotation explicitly registers the service with BlazeDS. This is a security measure as this way only explicitly exported services are available remotely.
\ No newline at end of file
+Take care that the `destination` attribute matches exaclty the name you gave the service using the `@Service` annotation
+and that the service is also annotated with `@RemotingDestination`
+
+The `@Service` annotation gives the service a name in the Spring context and would be available under that name inside
+the Spring context. The `@RemotingDestination` annotation explicitly registers the service with BlazeDS. This is a
+security measure as this way only explicitly exported services are available remotely.
\ No newline at end of file
diff --git a/archetypes/blazeds-spring-boot-archetype/pom.xml b/archetypes/blazeds-spring-boot-archetype/pom.xml
index 34502c4..55fba5c 100644
--- a/archetypes/blazeds-spring-boot-archetype/pom.xml
+++ b/archetypes/blazeds-spring-boot-archetype/pom.xml
@@ -1,35 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.flex.blazeds</groupId>
- <artifactId>flex-messaging-archetypes</artifactId>
- <version>4.7.3</version>
- </parent>
-
- <artifactId>blazeds-spring-boot-example-archetype</artifactId>
- <packaging>maven-archetype</packaging>
-
- <name>blazeds-spring-boot-example-archetype</name>
-
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.archetype</groupId>
- <artifactId>archetype-packaging</artifactId>
- <version>3.0.0</version>
- </extension>
- </extensions>
-
- <pluginManagement>
- <plugins>
- <plugin>
- <artifactId>maven-archetype-plugin</artifactId>
- <version>3.0.0</version>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.flex.blazeds</groupId>
+ <artifactId>flex-messaging-archetypes</artifactId>
+ <version>4.8.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>blazeds-spring-boot-example-archetype</artifactId>
+ <packaging>maven-archetype</packaging>
+
+ <name>blazeds-spring-boot-example-archetype</name>
+
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>3.0.0</version>
+ </extension>
+ </extensions>
+
+ <plugins>
+ <plugin>
+ <groupId>org.apache.rat</groupId>
+ <artifactId>apache-rat-plugin</artifactId>
+ <version>0.14</version>
+ <configuration>
+ <excludes combine.self="append">
+ <!-- This file is empty and something is added it breaks the tests -->
+ <exclude>src/test/resources/projects/basic/goal.txt</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ </plugins>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>3.0.0</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
</project>
diff --git a/archetypes/blazeds-spring-boot-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml b/archetypes/blazeds-spring-boot-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
index d8583f8..36e8fb9 100644
--- a/archetypes/blazeds-spring-boot-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
+++ b/archetypes/blazeds-spring-boot-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -1,19 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
-<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" name="blazeds-spring-boot-example"
- xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <fileSets>
- <fileSet filtered="true" packaged="true" encoding="UTF-8">
- <directory>src/main/java</directory>
- <includes>
- <include>**/*.java</include>
- </includes>
- </fileSet>
- <fileSet filtered="true" encoding="UTF-8">
- <directory>src/main/resources</directory>
- <includes>
- <include>**/*.xml</include>
- </includes>
- </fileSet>
- </fileSets>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<archetype-descriptor
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
+ name="blazeds-spring-boot-example"
+ xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <fileSets>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.xml</include>
+ </includes>
+ </fileSet>
+ </fileSets>
</archetype-descriptor>
diff --git a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/pom.xml b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/pom.xml
index 84a854c..5ce2dd4 100644
--- a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/pom.xml
+++ b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/pom.xml
@@ -16,62 +16,64 @@
See the License for the specific language governing permissions and
limitations under the License.
---><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
- <groupId>${groupId}</groupId>
- <artifactId>${artifactId}</artifactId>
- <version>${version}</version>
- <packaging>war</packaging>
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+ <version>${version}</version>
+ <packaging>war</packaging>
- <build>
- <plugins>
- <!-- Make Spring-Boot build an executable war -->
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <version>1.3.3.RELEASE</version>
- <executions>
- <execution>
- <goals>
- <goal>repackage</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <classifier>exec</classifier>
- </configuration>
- </plugin>
- <!--
- We are building a servlet 3.0 application we don't
- need a web.xml, so we have to disable a check on the
- plugin.
- -->
- <plugin>
- <artifactId>maven-war-plugin</artifactId>
- <configuration>
- <failOnMissingWebXml>false</failOnMissingWebXml>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <build>
+ <plugins>
+ <!-- Make Spring-Boot build an executable war -->
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ <version>1.3.3.RELEASE</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>repackage</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <classifier>exec</classifier>
+ </configuration>
+ </plugin>
+ <!--
+ We are building a servlet 3.0 application we don't
+ need a web.xml, so we have to disable a check on the
+ plugin.
+ -->
+ <plugin>
+ <artifactId>maven-war-plugin</artifactId>
+ <configuration>
+ <failOnMissingWebXml>false</failOnMissingWebXml>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
- <dependencies>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context</artifactId>
- <version>4.3.2.RELEASE</version>
- </dependency>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>4.3.2.RELEASE</version>
+ </dependency>
- <!--
- This will pull in and configure the servlet engine as
- well as the BlazeDS server.
- -->
- <dependency>
- <groupId>org.apache.flex.blazeds</groupId>
- <artifactId>blazeds-spring-boot-starter</artifactId>
- <version>4.7.3-SNAPSHOT</version>
- </dependency>
- </dependencies>
+ <!--
+ This will pull in and configure the servlet engine as
+ well as the BlazeDS server.
+ -->
+ <dependency>
+ <groupId>org.apache.flex.blazeds</groupId>
+ <artifactId>blazeds-spring-boot-starter</artifactId>
+ <version>4.7.3-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
</project>
diff --git a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/BlazeDSSpringBootApplication.java b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/BlazeDSSpringBootApplication.java
index e103a47..cf23b8a 100644
--- a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/BlazeDSSpringBootApplication.java
+++ b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/BlazeDSSpringBootApplication.java
@@ -1,26 +1,26 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
+#set($symbol_pound='#')
+ #set($symbol_dollar='$')
+ #set($symbol_escape='\' )
+ /*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
-package ${package};
+ package ${package};
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
diff --git a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/services/ExampleService.java b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/services/ExampleService.java
index 11592b5..fdbb9e8 100644
--- a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/services/ExampleService.java
+++ b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/java/services/ExampleService.java
@@ -1,26 +1,26 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
+#set($symbol_pound='#')
+ #set($symbol_dollar='$')
+ #set($symbol_escape='\' )
+ /*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
-package ${package}.services;
+ package ${package}.services;
import org.springframework.flex.remoting.RemotingDestination;
import org.springframework.stereotype.Service;
diff --git a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/flex/services-config.xml b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/flex/services-config.xml
index 85b022c..bc32d36 100644
--- a/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/flex/services-config.xml
+++ b/archetypes/blazeds-spring-boot-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/flex/services-config.xml
@@ -1,86 +1,86 @@
#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
+ #set( $symbol_dollar = '$' )
+ #set( $symbol_escape = '\' )
+ <?xml version="1.0" encoding="UTF-8"?>
+ <!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
--->
+ -->
<services-config>
- <services>
- <service id="remoting-service" class="flex.messaging.services.RemotingService">
- <adapters>
- <adapter-definition
- id="java-object"
- class="flex.messaging.services.remoting.adapters.JavaAdapter"
- default="true"/>
- </adapters>
- <default-channels>
- <channel ref="websocketAmf"/>
- <channel ref="longPollingAmf"/>
- <channel ref="shortPollingAmf"/>
- </default-channels>
- </service>
- </services>
+ <services>
+ <service id="remoting-service" class="flex.messaging.services.RemotingService">
+ <adapters>
+ <adapter-definition
+ id="java-object"
+ class="flex.messaging.services.remoting.adapters.JavaAdapter"
+ default="true"/>
+ </adapters>
+ <default-channels>
+ <channel ref="websocketAmf"/>
+ <channel ref="longPollingAmf"/>
+ <channel ref="shortPollingAmf"/>
+ </default-channels>
+ </service>
+ </services>
- <channels>
- <channel-definition id="websocketAmf" class="mx.messaging.channels.StreamingAMFChannel">
- <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/websocket-amf"
- class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
- <properties>
- <server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
- <add-no-cache-headers>true</add-no-cache-headers>
- </properties>
- </channel-definition>
- <channel-definition id="longPollingAmf" class="mx.messaging.channels.AMFChannel">
- <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/long-polling-amf"
- class="flex.messaging.endpoints.AMFEndpoint"/>
- <properties>
- <polling-enabled>true</polling-enabled>
- <wait-interval-millis>0</wait-interval-millis>
- <polling-interval-millis>1000</polling-interval-millis>
- <max-waiting-poll-requests>100</max-waiting-poll-requests>
- <piggybacking-enabled>true</piggybacking-enabled>
- <add-no-cache-headers>true</add-no-cache-headers>
- </properties>
- </channel-definition>
- <channel-definition id="shortPollingAmf" class="mx.messaging.channels.AMFChannel">
- <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/short-polling-amf"
- class="flex.messaging.endpoints.AMFEndpoint"/>
- <properties>
- <polling-enabled>true</polling-enabled>
- <polling-interval-millis>3000</polling-interval-millis>
- <piggybacking-enabled>true</piggybacking-enabled>
- <add-no-cache-headers>true</add-no-cache-headers>
- </properties>
- </channel-definition>
- </channels>
+ <channels>
+ <channel-definition id="websocketAmf" class="mx.messaging.channels.StreamingAMFChannel">
+ <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/websocket-amf"
+ class="flex.messaging.endpoints.StreamingAMFEndpoint"/>
+ <properties>
+ <server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
+ <add-no-cache-headers>true</add-no-cache-headers>
+ </properties>
+ </channel-definition>
+ <channel-definition id="longPollingAmf" class="mx.messaging.channels.AMFChannel">
+ <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/long-polling-amf"
+ class="flex.messaging.endpoints.AMFEndpoint"/>
+ <properties>
+ <polling-enabled>true</polling-enabled>
+ <wait-interval-millis>0</wait-interval-millis>
+ <polling-interval-millis>1000</polling-interval-millis>
+ <max-waiting-poll-requests>100</max-waiting-poll-requests>
+ <piggybacking-enabled>true</piggybacking-enabled>
+ <add-no-cache-headers>true</add-no-cache-headers>
+ </properties>
+ </channel-definition>
+ <channel-definition id="shortPollingAmf" class="mx.messaging.channels.AMFChannel">
+ <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/short-polling-amf"
+ class="flex.messaging.endpoints.AMFEndpoint"/>
+ <properties>
+ <polling-enabled>true</polling-enabled>
+ <polling-interval-millis>3000</polling-interval-millis>
+ <piggybacking-enabled>true</piggybacking-enabled>
+ <add-no-cache-headers>true</add-no-cache-headers>
+ </properties>
+ </channel-definition>
+ </channels>
- <flex-client>
- <!-- Make sure clients are automatically expired -->
- <timeout-minutes>720</timeout-minutes>
- </flex-client>
+ <flex-client>
+ <!-- Make sure clients are automatically expired -->
+ <timeout-minutes>720</timeout-minutes>
+ </flex-client>
- <logging>
- <!--
- Logging inside BlazeDS is completely turned off.
- The UniversalExceptionTranslator will handle logging
- of exceptions inside Spring.
- -->
- <target class="flex.messaging.log.ConsoleTarget" level="None"/>
- </logging>
+ <logging>
+ <!--
+ Logging inside BlazeDS is completely turned off.
+ The UniversalExceptionTranslator will handle logging
+ of exceptions inside Spring.
+ -->
+ <target class="flex.messaging.log.ConsoleTarget" level="None"/>
+ </logging>
</services-config>
\ No newline at end of file
diff --git a/archetypes/blazeds-spring-boot-archetype/src/test/resources/projects/basic/archetype.properties b/archetypes/blazeds-spring-boot-archetype/src/test/resources/projects/basic/archetype.properties
index f6cebd8..f359ece 100644
--- a/archetypes/blazeds-spring-boot-archetype/src/test/resources/projects/basic/archetype.properties
+++ b/archetypes/blazeds-spring-boot-archetype/src/test/resources/projects/basic/archetype.properties
@@ -1,4 +1,21 @@
-#Fri Feb 17 09:33:41 CET 2017
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
package=it.pkg
version=0.1-SNAPSHOT
groupId=archetype.it
diff --git a/archetypes/pom.xml b/archetypes/pom.xml
index fc37b41..e5dcd7d 100755
--- a/archetypes/pom.xml
+++ b/archetypes/pom.xml
@@ -16,20 +16,21 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.flex.blazeds</groupId>
- <artifactId>blazeds</artifactId>
- <version>4.7.3</version>
- </parent>
-
- <artifactId>flex-messaging-archetypes</artifactId>
- <packaging>pom</packaging>
-
- <modules>
- <module>blazeds-spring-boot-archetype</module>
- </modules>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.flex.blazeds</groupId>
+ <artifactId>blazeds</artifactId>
+ <version>4.8.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>flex-messaging-archetypes</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>blazeds-spring-boot-archetype</module>
+ </modules>
</project>
diff --git a/build.properties b/build.properties
index 336829e..a1b2183 100755
--- a/build.properties
+++ b/build.properties
@@ -12,47 +12,34 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-
-
-
-
-
src.depend=true
src.debug=on
-
-blazeds.dir=${basedir}
-
+blazeds.dir=${basedir}
servlet.version=2.5
activemq.version=5.7.0
codec.version=1.6
collections.version=3.2.1
httpclient.version=3.0.1
logging.version=1.1.1
-log4j.version=1.2.14
-spring.version=3.0.7
-xalan.version=2.6.0
-catalina.version=6.0.26
-catalina7.version=7.0.8
-catalina4.version=4.0.6
-
+log4j.version=1.2.14
+spring.version=3.0.7
+xalan.version=2.6.0
+catalina.version=6.0.26
+catalina7.version=7.0.8
+catalina4.version=4.0.6
local.sdk.lib.dir=./modules/sdk/lib
local.sdk.frameworks.dir=./frameworks
local.sdk.bundles.dir=./frameworks/locale
-
sdk.bin.dir=${blazeds1.dir}/bin
sdk.lib.dir=${blazeds1.dir}/lib
compc.dir=${blazeds1.dir}/bin
-
sdk.version=4
sdk.frameworks=${local.sdk.frameworks.dir}
sdk.zip.dir=${blazeds.dir}/resources/flex_sdk
sdk.zip.file=flex_sdk_${sdk.version}.zip
sdk.zip=${sdk.zip.dir}/${sdk.zip.file}
-
min.sdk.version=3.5
-
branch=blazeds/trunk
-
webapp.ce.lib=flex-messaging-common.jar,flex-messaging-core.jar,flex-messaging-proxy.jar,flex-messaging-remoting.jar,flex-messaging-opt.jar,commons-logging-1.1.1.jar,commons-codec-1.5.jar,commons-httpclient-3.1.jar,backport-util-concurrent.jar,concurrent.jar,cfgatewayadapter.jar,xalan.jar,flex-rds-server.jar
webapp.lib=flex-messaging-common.jar,flex-messaging-core.jar,flex-messaging-proxy.jar,flex-messaging-remoting.jar,flex-messaging-opt.jar,,commons-logging-1.1.1.jar,commons-codec-1.5.jar,commons-httpclient-3.1.jar,backport-util-concurrent.jar,concurrent.jar,jsafeJCE.jar,fxgutils.jar,flex-rds-server.jar
webapp.classes=commons-logging.properties
@@ -62,36 +49,28 @@ flex.libs=playerglobal.swc,automation.swc,datavisualization.swc,flex.swc,framewo
axis.jars=activation.jar, axis.jar, commons-discovery-0.2.jar, jaxrpc.jar, saaj.jar, wsdl4j-1.5.1.jar
qa-services.jars=qa-services.jar, qa-services-wm.jar, javax_mail.jar
jgroups.jars=jgroups-core-2.9.0GA.jar,log4j.jar
-
# Set this to true if you have an updated version of a non-fds swc in the frameworks/local-swcs directory
# that needs to be used by the build until the regular approval process picks up the external
# change.
# This should always be false unless you are explicitly overriding a swc (or swcs).
# See the readme.txt file in the local-swcs directory for more information.
use.local.swcs=false
-
#player uninstaller file names
uninstaller.exe=uninstall_flash_player.exe
-
#player 11 file names
fp11.installer.exe=11.1/win/InstallAX.exe
fp11.installer.plugin.exe=11.1/win/InstallPlugin.exe
-
#player 10 file names
fp10.installer.exe=10.2/win/InstallAX.exe
fp10.installer.plugin.exe=10.2/win/InstallPlugin.exe
-
#player 9 file name
fp9.installer.exe=win/Install Flash Player 9 ActiveX.exe
fp9.installer.plugin.exe=win/Install Flash Player 9 Plugin.exe
-
-
# set the fb3 pro license in your environment if don't want watermarks
# using environment variable so that we're not checking in a
# plain text license into source control
env.fb3_license=fake
env.fb4_license=fake
-
######################
# Manifest Entries
######################
diff --git a/build.xml b/build.xml
index 7a5043c..1cb128d 100755
--- a/build.xml
+++ b/build.xml
@@ -19,7 +19,6 @@
-->
-
<!--
Notes: If you're running the main target, then there is no need to call clean first.
@@ -32,8 +31,8 @@ Each of the main targets for the modules will call clean themselves before proce
<property environment="env"/>
<!-- properties -->
- <property file="${basedir}/build.properties" />
-
+ <property file="${basedir}/build.properties"/>
+
<property name="modules.core.dir" value="${basedir}/core"/>
<property name="download.dir" value="${basedir}/in"/>
<property name="lib.dir" value="${basedir}/lib"/>
@@ -55,7 +54,7 @@ Each of the main targets for the modules will call clean themselves before proce
<property name="hsqldb.zip.file" value="${basedir}/in/hsqldb_1_8_0_10.zip"/>
<property name="jms.zip.file" value="${basedir}/in/openjms-0.7.6.1.zip"/>
-->
- <property name="jms.jar" value="geronimo-jms_1.1_spec-1.1.1.jar" />
+ <property name="jms.jar" value="geronimo-jms_1.1_spec-1.1.1.jar"/>
<property name="jms.dir" value="${lib.dir}/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1"/>
<property name="log4j.dir" value="${lib.dir}/log4j/log4j/${log4j.version}"/>
<property name="log4j.zip.file" value="${basedir}/in/logging-log4j-${log4j.version}.zip"/>
@@ -77,7 +76,7 @@ Each of the main targets for the modules will call clean themselves before proce
<property name="catalina4.zip.file" value="${basedir}/in/jakarta-tomcat-${catalina4.version}.zip"/>
<property name="catalina.dir" value="${lib.dir}/org/apache/tomcat/catalina/${catalina.version}"/>
<property name="catalina7.dir" value="${lib.dir}/org/apache/tomcat/tomcat-catalina/${catalina7.version}"/>
-
+
<property name="dist.dir" value="${basedir}/dist"/>
<property name="qa.dir" value="${basedir}/qa"/>
@@ -85,25 +84,25 @@ Each of the main targets for the modules will call clean themselves before proce
<property name="label" value="dev"/>
<property name="build.number" value="${label}"/>
- <property name="subproject.target" value="main" />
+ <property name="subproject.target" value="main"/>
<property name="server.baseurl" value="http://localhost:8400"/>
- <property name="tmp.dir" value="${basedir}/packagetemp/temp" />
- <property name="local.sdk.dir" value="resources/flex_sdk" />
-
+ <property name="tmp.dir" value="${basedir}/packagetemp/temp"/>
+ <property name="local.sdk.dir" value="resources/flex_sdk"/>
+
<property name="env.FLEX_HOME" value="${basedir}/../flex-sdk"/>
<!-- set FLEX_HOME from environment if not already set -->
<property name="FLEX_HOME" value="${env.FLEX_HOME}"/>
<property name="ANT_HOME" value="${env.ANT_HOME}"/>
- <condition property="ocx.dir" value="${env.WINDIR}/system32/Macromed/Flash/" >
+ <condition property="ocx.dir" value="${env.WINDIR}/system32/Macromed/Flash/">
<isset property="env.WINDIR"/>
</condition>
- <condition property="ocx.dir" value="${env.WinDir}/system32/Macromed/Flash/" >
+ <condition property="ocx.dir" value="${env.WinDir}/system32/Macromed/Flash/">
<isset property="env.WinDir"/>
</condition>
- <property name="ocx.dir" value="${env.windir}/system32/Macromed/Flash/" />
+ <property name="ocx.dir" value="${env.windir}/system32/Macromed/Flash/"/>
<condition property="isFlex3" value="true">
<equals arg1="${sdk.version}" arg2="3"/>
@@ -121,70 +120,72 @@ Each of the main targets for the modules will call clean themselves before proce
<property name="installer.plugin.exe" value="${fp11.installer.plugin.exe}"/>
<target name="check-env"
- depends="check-flex-home, load-more-properties, check-playerglobal-home" />
-
+ depends="check-flex-home, load-more-properties, check-playerglobal-home"/>
+
<target name="check-flex-home" unless="flexhome.exists"
- description="Check FLEX_HOME for both a directory and a file">
+ description="Check FLEX_HOME for both a directory and a file">
<echo message="FLEX_HOME is ${env.FLEX_HOME}"/>
- <available file="${env.FLEX_HOME}"
- type="dir"
- property="FLEX_HOME.set"/>
+ <available file="${env.FLEX_HOME}"
+ type="dir"
+ property="FLEX_HOME.set"/>
+
+ <fail message="The environment variable FLEX_HOME is not set to a directory"
+ unless="FLEX_HOME.set"/>
- <fail message="The environment variable FLEX_HOME is not set to a directory"
- unless="FLEX_HOME.set"/>
+ <property name="flex-sdk-description.xml"
+ value="${env.FLEX_HOME}/flex-sdk-description.xml"/>
- <property name="flex-sdk-description.xml"
- value="${env.FLEX_HOME}/flex-sdk-description.xml"/>
+ <available file="${flex-sdk-description.xml}"
+ type="file"
+ property="flex-sdk-description.xml.exists"/>
+
+ <fail message="The file ${flex-sdk-description.xml} does not exist"
+ unless="flex-sdk-description.xml"/>
- <available file="${flex-sdk-description.xml}"
- type="file"
- property="flex-sdk-description.xml.exists"/>
-
- <fail message="The file ${flex-sdk-description.xml} does not exist"
- unless="flex-sdk-description.xml"/>
-
</target>
- <target name="load-more-properties"
+ <target name="load-more-properties"
description="load the FLEX_HOME/build.properties to pick up playerglobal.version">
- <property file="${FLEX_HOME}/build.properties" />
+ <property file="${FLEX_HOME}/build.properties"/>
</target>
-
+
<target name="check-playerglobal-home" unless="playerglobal.swc.exists"
- description="Check PLAYERGLOBAL_HOME for both a directory and a swc file">
+ description="Check PLAYERGLOBAL_HOME for both a directory and a swc file">
<echo message="PLAYERGLOBAL_HOME is ${env.PLAYERGLOBAL_HOME}"/>
<echo message="playerglobal.version is ${playerglobal.version}"/>
- <available file="${env.PLAYERGLOBAL_HOME}"
- type="dir"
- property="PLAYERGLOBAL_HOME.set"/>
+ <available file="${env.PLAYERGLOBAL_HOME}"
+ type="dir"
+ property="PLAYERGLOBAL_HOME.set"/>
- <fail message="The environment variable PLAYERGLOBAL_HOME is not set to a directory"
- unless="PLAYERGLOBAL_HOME.set"/>
+ <fail message="The environment variable PLAYERGLOBAL_HOME is not set to a directory"
+ unless="PLAYERGLOBAL_HOME.set"/>
- <property name="playerglobal.swc"
- value="${env.PLAYERGLOBAL_HOME}/${playerglobal.version}/playerglobal.swc"/>
+ <property name="playerglobal.swc"
+ value="${env.PLAYERGLOBAL_HOME}/${playerglobal.version}/playerglobal.swc"/>
+
+ <available file="${playerglobal.swc}"
+ type="file"
+ property="playerglobal.swc.exists"/>
+
+ <fail message="The file ${playerglobal.swc} does not exist"
+ unless="playerglobal.swc.exists"/>
- <available file="${playerglobal.swc}"
- type="file"
- property="playerglobal.swc.exists"/>
-
- <fail message="The file ${playerglobal.swc} does not exist"
- unless="playerglobal.swc.exists"/>
-
<echo message="playerglobal.swc is ${playerglobal.swc}"/>
</target>
-
- <target name="thirdparty-downloads" unless="no.thirdparty-downloads" description="Downloads all the required thirdparty code.">
+
+ <target name="thirdparty-downloads" unless="no.thirdparty-downloads"
+ description="Downloads all the required thirdparty code.">
<ant antfile="${basedir}/downloads.xml" dir="${basedir}"/>
</target>
-
- <target name="main" depends="check-env,clean,thirdparty-downloads,sdk,common,core,proxy,remoting,opt,createMMSFile" description="full build">
+
+ <target name="main" depends="check-env,clean,thirdparty-downloads,sdk,common,core,proxy,remoting,opt,createMMSFile"
+ description="full build">
<tstamp>
- <format property="build.datetime" pattern="MM/dd/yyyy hh:mm:ss aa" />
+ <format property="build.datetime" pattern="MM/dd/yyyy hh:mm:ss aa"/>
</tstamp>
<echo>ant main target completed on ${build.datetime}</echo>
</target>
@@ -197,7 +198,7 @@ Each of the main targets for the modules will call clean themselves before proce
<target name="sdk" description="get the sdk and add to the server">
<!--<ant antfile="${basedir}/sdk/build.xml"/> AJH: needed? -->
</target>
-
+
<target name="common" description="full build of the common module">
<ant antfile="${basedir}/common/build.xml" target="${subproject.target}"/>
</target>
@@ -223,8 +224,8 @@ Each of the main targets for the modules will call clean themselves before proce
</target>
<target name="createMMSFile"
- description="create mms.cfg in order to enable local shared object access"
- if="isWindows">
+ description="create mms.cfg in order to enable local shared object access"
+ if="isWindows">
<!-- Sets the default maximum local shared object storage size to unlimited -->
<echo file="${ocx.dir}/mms.cfg" append="false">LocalStorageLimit=6</echo>
</target>
@@ -235,7 +236,7 @@ Each of the main targets for the modules will call clean themselves before proce
<!-- package qa apps -->
<!-- <ant antfile="${qa.dir}/apps/qa-manual/build.xml" target="package"/> -->
<ant antfile="${qa.dir}/apps/qa-regress/build.xml" target="package"/>
-
+
<ant antfile="${basedir}/apps/samples/build.xml" target="package"/>
<ant antfile="${basedir}/apps/samples-spring/build.xml" target="package"/>
<ant antfile="${basedir}/apps/blazeds/build.xml" target="package"/>
@@ -244,32 +245,33 @@ Each of the main targets for the modules will call clean themselves before proce
<ant antfile="${appserver.dir}/build.xml" target="package"/>
- <antcall target="package-oem" />
+ <antcall target="package-oem"/>
<copy todir="${dist.dir}/lib">
<fileset dir="${basedir}/lib">
<include name="flex-messaging-common.jar"/>
- <include name="flex-messaging-core.jar"/>
+ <include name="flex-messaging-core.jar"/>
</fileset>
</copy>
- <antcall target="javadoc" />
+ <antcall target="javadoc"/>
<!-- add apps to Tomcat -->
- <unzip src="${dist.dir}/blazeds.war" dest="${dist.dir}/tomcat/webapps/blazeds" />
- <unzip src="${dist.dir}/blazeds-spring.war" dest="${dist.dir}/tomcat/webapps/blazeds-spring" />
- <unzip src="${dist.dir}/samples.war" dest="${dist.dir}/tomcat/webapps/samples" />
- <unzip src="${dist.dir}/samples-spring.war" dest="${dist.dir}/tomcat/webapps/samples-spring" />
- <unzip src="${dist.dir}/ds-console.war" dest="${dist.dir}/tomcat/webapps/ds-console" />
+ <unzip src="${dist.dir}/blazeds.war" dest="${dist.dir}/tomcat/webapps/blazeds"/>
+ <unzip src="${dist.dir}/blazeds-spring.war" dest="${dist.dir}/tomcat/webapps/blazeds-spring"/>
+ <unzip src="${dist.dir}/samples.war" dest="${dist.dir}/tomcat/webapps/samples"/>
+ <unzip src="${dist.dir}/samples-spring.war" dest="${dist.dir}/tomcat/webapps/samples-spring"/>
+ <unzip src="${dist.dir}/ds-console.war" dest="${dist.dir}/tomcat/webapps/ds-console"/>
<!-- generate turnkey zip -->
<antcall target="package-turnkey"/>
<!-- generate binary zip -->
<zip destfile="${dist.dir}/blazeds-bin-${manifest.Implementation-Version}.${label}.zip"
- comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
+ comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
<fileset dir="${dist.dir}" includes="blazeds.war"/>
- <zipfileset dir="${basedir}/collateral" includes="blazeds-bin-readme.htm" fullpath="blazeds-bin-readme.htm"/>
+ <zipfileset dir="${basedir}/collateral" includes="blazeds-bin-readme.htm"
+ fullpath="blazeds-bin-readme.htm"/>
</zip>
<!-- generate src zip -->
@@ -277,65 +279,67 @@ Each of the main targets for the modules will call clean themselves before proce
<!-- generate java amf client zip -->
<zip destfile="${dist.dir}/blazeds-java-amf.${label}.zip"
- comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
- <fileset dir="${dist.dir}/lib" includes="*"/>
+ comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
+ <fileset dir="${dist.dir}/lib" includes="*"/>
</zip>
-
+
<!-- geneate md5 checksums for the four zips -->
<checksum forceOverwrite="yes" format="MD5SUM">
<fileset dir="${dist.dir}">
- <include name="blazeds-*.zip" />
+ <include name="blazeds-*.zip"/>
</fileset>
</checksum>
- <antcall target="package-automation" />
+ <antcall target="package-automation"/>
</target>
<target name="package-turnkey">
-
- <zip destfile="${dist.dir}/blazeds-turnkey-${manifest.Implementation-Version}.${label}.zip"
- comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
- <fileset dir="${dist.dir}" includes="blazeds.war,blazeds-spring.war,samples.war,samples-spring.war,ds-console.war"/>
- <zipfileset dir="${dist.dir}/tomcat" prefix="tomcat" excludes="bin,bin/*,work/"/>
- <zipfileset dir="${dist.dir}/tomcat/bin" prefix="tomcat/bin" filemode="744"/>
- <zipfileset dir="${dist.dir}/docs" prefix="docs"/>
-
- <zipfileset dir="${basedir}/resources" prefix="resources">
- <exclude name="fds-ajax-bridge/build.xml"/>
- <exclude name="clustering/JGroups-2.9.0.GA.src.zip"/>
- <exclude name="flex_sdk/*.zip"/>
- <exclude name="flex_sdk/*.htm"/>
- <exclude name="flex_sdk/readme.txt"/>
- </zipfileset>
-
- <zipfileset dir="${basedir}/lib" prefix="resources/clustering" includes="jgroups*"/>
- <zipfileset dir="${basedir}/lib" prefix="resources/lib" includes="flex-messaging*"/>
- <zipfileset dir="${basedir}/collateral" includes="blazeds-turnkey-readme.htm" fullpath="blazeds-turnkey-readme.htm"/>
- <zipfileset dir="${dist.dir}/sampledb" prefix="sampledb" filemode="744"/>
- </zip>
- </target>
-
-
-
+
+ <zip destfile="${dist.dir}/blazeds-turnkey-${manifest.Implementation-Version}.${label}.zip"
+ comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
+ <fileset dir="${dist.dir}"
+ includes="blazeds.war,blazeds-spring.war,samples.war,samples-spring.war,ds-console.war"/>
+ <zipfileset dir="${dist.dir}/tomcat" prefix="tomcat" excludes="bin,bin/*,work/"/>
+ <zipfileset dir="${dist.dir}/tomcat/bin" prefix="tomcat/bin" filemode="744"/>
+ <zipfileset dir="${dist.dir}/docs" prefix="docs"/>
+
+ <zipfileset dir="${basedir}/resources" prefix="resources">
+ <exclude name="fds-ajax-bridge/build.xml"/>
+ <exclude name="clustering/JGroups-2.9.0.GA.src.zip"/>
+ <exclude name="flex_sdk/*.zip"/>
+ <exclude name="flex_sdk/*.htm"/>
+ <exclude name="flex_sdk/readme.txt"/>
+ </zipfileset>
+
+ <zipfileset dir="${basedir}/lib" prefix="resources/clustering" includes="jgroups*"/>
+ <zipfileset dir="${basedir}/lib" prefix="resources/lib" includes="flex-messaging*"/>
+ <zipfileset dir="${basedir}/collateral" includes="blazeds-turnkey-readme.htm"
+ fullpath="blazeds-turnkey-readme.htm"/>
+ <zipfileset dir="${dist.dir}/sampledb" prefix="sampledb" filemode="744"/>
+ </zip>
+ </target>
+
+
<target name="package-src">
-
- <zip destfile="${dist.dir}/blazeds-src-${manifest.Implementation-Version}.${label}.zip"
- comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
- <zipfileset dir="${basedir}/collateral" includes="blazeds-src-readme.htm" fullpath="blazeds-src-readme.htm"/>
- <fileset dir="${basedir}">
+
+ <zip destfile="${dist.dir}/blazeds-src-${manifest.Implementation-Version}.${label}.zip"
+ comment="${manifest.Implementation-Title} ${manifest.Implementation-Version}.${label}">
+ <zipfileset dir="${basedir}/collateral" includes="blazeds-src-readme.htm"
+ fullpath="blazeds-src-readme.htm"/>
+ <fileset dir="${basedir}">
<include name="adobe.header"/>
<include name="build.properties"/>
<include name="build.xml"/>
<include name="readme.txt"/>
- <include name="collateral/**/*"/>
- <include name="development/**/*"/>
- <include name="sampledb/**/*"/>
- </fileset>
+ <include name="collateral/**/*"/>
+ <include name="development/**/*"/>
+ <include name="sampledb/**/*"/>
+ </fileset>
<!-- apps folder -->
- <zipfileset dir="${basedir}/apps" prefix="apps">
+ <zipfileset dir="${basedir}/apps" prefix="apps">
<!-- blazeds app -->
<include name="blazeds/**/*"/>
@@ -400,121 +404,134 @@ Each of the main targets for the modules will call clean themselves before proce
</zipfileset>
- <!-- qa folder -->
- <zipfileset dir="${basedir}/qa" prefix="qa">
- <!-- qa-manual app -->
- <include name="apps/qa-manual/**/*"/>
- <exclude name="apps/qa-manual/bugs/"/>
-
- <!-- common excludes for both qa-manual and qa-regress apps -->
- <exclude name="apps/**/WEB-INF/classes/"/>
- <exclude name="apps/**/WEB-INF/lib/"/>
- <exclude name="apps/**/WEB-INF/flex/jars/"/>
- <exclude name="apps/**/WEB-INF/flex/libs/"/>
- <exclude name="apps/**/WEB-INF/flex/locale/"/>
- <exclude name="apps/**/WEB-INF/flex/*.ser"/>
- <exclude name="apps/**/WEB-INF/flex/flash-unicode-table.xml"/>
- <exclude name="apps/**/WEB-INF/flex/flex-sdk-description.xml"/>
- <exclude name="apps/**/WEB-INF/flex/mxml-manifest.xml"/>
- <exclude name="apps/**/WEB-INF/flex/flex-config.xml"/>
- <exclude name="apps/**/WEB-INF/flex/flex-webtier-config.xml"/>
- <exclude name="apps/**/WEB-INF/flex/messaging-config.xml"/>
- <exclude name="apps/**/WEB-INF/flex/proxy-config.xml"/>
- <exclude name="apps/**/WEB-INF/flex/remoting-config.xml"/>
- <exclude name="apps/**/WEB-INF/flex/services-config.xml"/>
-
- <!-- qa-regress app -->
- <include name="apps/qa-regress/**/*"/>
- <exclude name="apps/qa-regress/features/"/>
- <exclude name="apps/qa-regress/lib/"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/bugs/"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/noproxy/"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/array*"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/attributesScript.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/deserializeDocLitArray.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/twoDimensionalArrayScript.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/DotNetDocLiteralTests/"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceAmpersandInWSDL.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceDotDotInWSDL.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceMethod*.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceSetEndpointURI.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceUseProxyFalseFault.mxml"/>
- <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceUseProxyTrue.mxml"/>
-
- <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/Query*.*"/>
- <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/*DotNet*"/>
- <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/SOAPBuilderRound2CFCTest.as"/>
- <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/SOAPBuilderRound3Compound1.as"/>
- <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/SOAPBuilderRound3Compound1_WhiteMesaTest.as"/>
-
- <include name="features/**/*"/>
-
- <include name="lib/**/*"/>
- <exclude name="lib/tools/"/>
- <exclude name="lib/ms*.jar"/>
- <exclude name="lib/commons-codec-1.3.jar"/>
- <exclude name="lib/commons-httpclient-3.1.jar"/>
- <exclude name="lib/commons-logging.jar"/>
- <exclude name="lib/qa-config.jar"/>
- <exclude name="lib/qa-flexunit.jar"/>
- <exclude name="lib/qa-mxunit.jar"/>
- <exclude name="lib/qa-utils.jar"/>
- <exclude name="lib/browserServer.jar"/>
- <exclude name="lib/xalan.jar"/>
-
- <include name="resources/config/*"/>
- <include name="resources/frameworks/*"/>
- <include name="resources/webtier/"/>
- <include name="src/**/*"/>
- <include name="build.*"/>
- </zipfileset>
-
-
- <!-- frameworks folder -->
- <zipfileset dir="${basedir}/frameworks" prefix="frameworks">
- <include name="**/datavisualization*.swc"/>
- <include name="local-swcs/*"/>
- </zipfileset>
-
- <!-- lib folder -->
- <zipfileset dir="${basedir}/lib" prefix="lib">
- <include name="hsqldb/*"/>
- <include name="spring/*"/>
-
- <include name="commons*.*"/>
- <exclude name="commons-logging.jar"/>
- <exclude name="commons-collections.jar"/>
-
- <include name="j*.*"/>
- <include name="flex-w*.*"/>
- <include name="flex-b*.*"/>
- <include name="xalan*.*"/>
- <include name="backport*.*"/>
- <include name="cfgatewayadapter.jar"/>
- <include name="concurrent.jar"/>
- <include name="oscache.jar"/>
- <include name="servlet.jar"/>
- </zipfileset>
-
- <!-- modules folder -->
- <zipfileset dir="${basedir}/modules" prefix="modules">
- <include name="**/src/**/*"/>
- <include name="**/lib/*"/>
- <include name="core/test/src/**/*"/>
- <include name="**/AdobeInfo.xml"/>
- <include name="**/build.xml"/>
- <exclude name="rds/"/>
- </zipfileset>
-
- <!-- servers folder -->
- <zipfileset dir="${basedir}/servers" prefix="servers">
- <exclude name="apache-tomcat-6.0.29/lib/blazeds/"/>
- <exclude name="apache-tomcat-6.0.29/conf/Catalina/localhost/qa-perf.xml"/>
- <exclude name="apache-tomcat-6.0.29/logs/"/>
- <exclude name="apache-tomcat-6.0.29/work/"/>
- </zipfileset>
-
- <!-- resources folder -->
+ <!-- qa folder -->
+ <zipfileset dir="${basedir}/qa" prefix="qa">
+ <!-- qa-manual app -->
+ <include name="apps/qa-manual/**/*"/>
+ <exclude name="apps/qa-manual/bugs/"/>
+
+ <!-- common excludes for both qa-manual and qa-regress apps -->
+ <exclude name="apps/**/WEB-INF/classes/"/>
+ <exclude name="apps/**/WEB-INF/lib/"/>
+ <exclude name="apps/**/WEB-INF/flex/jars/"/>
+ <exclude name="apps/**/WEB-INF/flex/libs/"/>
+ <exclude name="apps/**/WEB-INF/flex/locale/"/>
+ <exclude name="apps/**/WEB-INF/flex/*.ser"/>
+ <exclude name="apps/**/WEB-INF/flex/flash-unicode-table.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/flex-sdk-description.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/mxml-manifest.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/flex-config.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/flex-webtier-config.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/messaging-config.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/proxy-config.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/remoting-config.xml"/>
+ <exclude name="apps/**/WEB-INF/flex/services-config.xml"/>
+
+ <!-- qa-regress app -->
+ <include name="apps/qa-regress/**/*"/>
+ <exclude name="apps/qa-regress/features/"/>
+ <exclude name="apps/qa-regress/lib/"/>
+ <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/bugs/"/>
+ <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/noproxy/"/>
+ <exclude name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/array*"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/attributesScript.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/deserializeDocLitArray.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/general/twoDimensionalArrayScript.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/DotNetDocLiteralTests/"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceAmpersandInWSDL.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceDotDotInWSDL.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceMethod*.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceSetEndpointURI.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceUseProxyFalseFault.mxml"/>
+ <exclude
+ name="apps/qa-regress/testsuites/mxunit/tests/proxyService/webService/mxWebService/mxWebServiceUseProxyTrue.mxml"/>
+
+ <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/Query*.*"/>
+ <exclude name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/*DotNet*"/>
+ <exclude
+ name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/SOAPBuilderRound2CFCTest.as"/>
+ <exclude
+ name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/SOAPBuilderRound3Compound1.as"/>
+ <exclude
+ name="apps/qa-regress/testsuites/flexunit/src/tests/flexunit/wscl/interop/SOAPBuilderRound3Compound1_WhiteMesaTest.as"/>
+
+ <include name="features/**/*"/>
+
+ <include name="lib/**/*"/>
+ <exclude name="lib/tools/"/>
+ <exclude name="lib/ms*.jar"/>
+ <exclude name="lib/commons-codec-1.3.jar"/>
+ <exclude name="lib/commons-httpclient-3.1.jar"/>
+ <exclude name="lib/commons-logging.jar"/>
+ <exclude name="lib/qa-config.jar"/>
+ <exclude name="lib/qa-flexunit.jar"/>
+ <exclude name="lib/qa-mxunit.jar"/>
+ <exclude name="lib/qa-utils.jar"/>
+ <exclude name="lib/browserServer.jar"/>
+ <exclude name="lib/xalan.jar"/>
+
+ <include name="resources/config/*"/>
+ <include name="resources/frameworks/*"/>
+ <include name="resources/webtier/"/>
+ <include name="src/**/*"/>
+ <include name="build.*"/>
+ </zipfileset>
+
+
+ <!-- frameworks folder -->
+ <zipfileset dir="${basedir}/frameworks" prefix="frameworks">
+ <include name="**/datavisualization*.swc"/>
+ <include name="local-swcs/*"/>
+ </zipfileset>
+
+ <!-- lib folder -->
+ <zipfileset dir="${basedir}/lib" prefix="lib">
+ <include name="hsqldb/*"/>
+ <include name="spring/*"/>
+
+ <include name="commons*.*"/>
+ <exclude name="commons-logging.jar"/>
+ <exclude name="commons-collections.jar"/>
+
+ <include name="j*.*"/>
+ <include name="flex-w*.*"/>
+ <include name="flex-b*.*"/>
+ <include name="xalan*.*"/>
+ <include name="backport*.*"/>
+ <include name="cfgatewayadapter.jar"/>
+ <include name="concurrent.jar"/>
+ <include name="oscache.jar"/>
+ <include name="servlet.jar"/>
+ </zipfileset>
+
+ <!-- modules folder -->
+ <zipfileset dir="${basedir}/modules" prefix="modules">
+ <include name="**/src/**/*"/>
+ <include name="**/lib/*"/>
+ <include name="core/test/src/**/*"/>
+ <include name="**/AdobeInfo.xml"/>
+ <include name="**/build.xml"/>
+ <exclude name="rds/"/>
+ </zipfileset>
+
+ <!-- servers folder -->
+ <zipfileset dir="${basedir}/servers" prefix="servers">
+ <exclude name="apache-tomcat-6.0.29/lib/blazeds/"/>
+ <exclude name="apache-tomcat-6.0.29/conf/Catalina/localhost/qa-perf.xml"/>
+ <exclude name="apache-tomcat-6.0.29/logs/"/>
+ <exclude name="apache-tomcat-6.0.29/work/"/>
+ </zipfileset>
+
+ <!-- resources folder -->
<zipfileset dir="${basedir}/resources" prefix="resources">
<exclude name="security/tomcat/*.jar"/>
<exclude name="flex_sdk/*.zip"/>
@@ -523,10 +540,10 @@ Each of the main targets for the modules will call clean themselves before proce
</zip>
</target>
-<!--
-***************************************************************************
- Target - package-automation
-*************************************************************************** -->
+ <!--
+ ***************************************************************************
+ Target - package-automation
+ *************************************************************************** -->
<target name="package-automation" description="Create QA Automation package">
<zip destfile="${basedir}/dist/qa-automation.zip">
<zipfileset dir="${qa.dir}/automation"/>
@@ -535,54 +552,55 @@ Each of the main targets for the modules will call clean themselves before proce
<target name="package-oem" description="Create OEM package">
- <delete dir="${basedir}/packagetemp" failonerror="false" includeEmptyDirs="true"/>
- <mkdir dir="${basedir}/dist"/>
+ <delete dir="${basedir}/packagetemp" failonerror="false" includeEmptyDirs="true"/>
+ <mkdir dir="${basedir}/dist"/>
- <!-- Copy sdk zip and other community resources -->
- <copy todir="${basedir}/packagetemp">
- <fileset dir="${basedir}">
- <include name="resources/**/*"/>
- <exclude name="resources/flex_sdk/**/*"/>
- </fileset>
- </copy>
-
- <!-- Copy community jars -->
- <copy todir="${basedir}/packagetemp/lib">
- <fileset dir="${basedir}/lib">
- <include name="flex-messaging-common.jar"/>
- <include name="flex-messaging-core.jar"/>
- <include name="flex-messaging-proxy.jar"/>
- <include name="flex-messaging-remoting.jar"/>
- <include name="flex-messaging-opt.jar"/>
- <include name="flex-bootstrap.jar"/>
- <include name="flex-bootstrap-jsp.jar"/>
- <include name="flex-webtier.jar"/>
- <include name="flex-webtier-jsp.jar"/>
- <include name="oscache.jar"/>
- <include name="cfgatewayadapter.jar"/>
- <include name="flex-rds-server.jar"/>
- </fileset>
- </copy>
+ <!-- Copy sdk zip and other community resources -->
+ <copy todir="${basedir}/packagetemp">
+ <fileset dir="${basedir}">
+ <include name="resources/**/*"/>
+ <exclude name="resources/flex_sdk/**/*"/>
+ </fileset>
+ </copy>
- <copy todir="${basedir}/packagetemp/console_src">
- <fileset dir="${basedir}/apps/ds-console">
- <include name="console/**/*"/>
- <include name="*.mxml"/>
- </fileset>
- </copy>
+ <!-- Copy community jars -->
+ <copy todir="${basedir}/packagetemp/lib">
+ <fileset dir="${basedir}/lib">
+ <include name="flex-messaging-common.jar"/>
+ <include name="flex-messaging-core.jar"/>
+ <include name="flex-messaging-proxy.jar"/>
+ <include name="flex-messaging-remoting.jar"/>
+ <include name="flex-messaging-opt.jar"/>
+ <include name="flex-bootstrap.jar"/>
+ <include name="flex-bootstrap-jsp.jar"/>
+ <include name="flex-webtier.jar"/>
+ <include name="flex-webtier-jsp.jar"/>
+ <include name="oscache.jar"/>
+ <include name="cfgatewayadapter.jar"/>
+ <include name="flex-rds-server.jar"/>
+ </fileset>
+ </copy>
+
+ <copy todir="${basedir}/packagetemp/console_src">
+ <fileset dir="${basedir}/apps/ds-console">
+ <include name="console/**/*"/>
+ <include name="*.mxml"/>
+ </fileset>
+ </copy>
- <zip destfile="${basedir}/dist/blazeds-oem.zip">
- <fileset dir="${dist.dir}" includes="ds-console.war"/>
- <zipfileset dir="${basedir}/packagetemp"/>
- </zip>
- </target>
+ <zip destfile="${basedir}/dist/blazeds-oem.zip">
+ <fileset dir="${dist.dir}" includes="ds-console.war"/>
+ <zipfileset dir="${basedir}/packagetemp"/>
+ </zip>
+ </target>
<target name="package-oem-small" depends="package-oem" description="Create Small OEM package">
<echo message="Creating smaller Flex_SDK. . ."/>
<mkdir dir="${tmp.dir}"/>
- <unzip src="${basedir}/dist/blazeds-oem.zip" dest="${tmp.dir}"/>
+ <unzip src="${basedir}/dist/blazeds-oem.zip" dest="${tmp.dir}"/>
<mkdir dir="${tmp.dir}/${local.sdk.dir}/expanded"/>
- <unzip src="${basedir}/packagetemp/${local.sdk.dir}/${sdk.zip.file}" dest="${tmp.dir}/${local.sdk.dir}/expanded">
+ <unzip src="${basedir}/packagetemp/${local.sdk.dir}/${sdk.zip.file}"
+ dest="${tmp.dir}/${local.sdk.dir}/expanded">
<!--<patternset>
<include name="ant/lib/flexTasks.jar" />
<include name="asdoc/**/*"/>
@@ -593,21 +611,21 @@ Each of the main targets for the modules will call clean themselves before proce
<include name="frameworks/locale/**"/>
<include name="runtimes/player/**/*"/>
<include name="templates/**/*"/>
- </patternset>-->
+ </patternset>-->
</unzip>
<delete includeEmptyDirs="true" quiet="true">
- <fileset dir="${tmp.dir}/${local.sdk.dir}" includes="${sdk.zip.file}" />
+ <fileset dir="${tmp.dir}/${local.sdk.dir}" includes="${sdk.zip.file}"/>
</delete>
<zip destfile="${tmp.dir}/${local.sdk.dir}/${sdk.zip.file}">
<fileset dir="${tmp.dir}/${local.sdk.dir}/expanded" includes="**/**"/>
</zip>
- <delete dir="${tmp.dir}/${local.sdk.dir}/expanded" failonerror="false" />
+ <delete dir="${tmp.dir}/${local.sdk.dir}/expanded" failonerror="false"/>
<zip destfile="${basedir}/dist/blazeds-oem-small.zip">
<fileset dir="${tmp.dir}" includes="**/**"/>
</zip>
- <delete dir="${tmp.dir}" failonerror="false" />
+ <delete dir="${tmp.dir}" failonerror="false"/>
</target>
-
+
<target name="package-clean">
<delete failonerror="false" includeEmptyDirs="true">
<fileset dir="${dist.dir}" includes="**/*"/>
@@ -626,33 +644,34 @@ Each of the main targets for the modules will call clean themselves before proce
</delete>
</target>
- <target name="super-clean" depends="thirdparty-clean,clean" description="Cleans everything including thirdparty downloads."/>
-
+ <target name="super-clean" depends="thirdparty-clean,clean"
+ description="Cleans everything including thirdparty downloads."/>
+
<target name="thirdparty-clean" unless="no.thirdparty-clean" description="Removes all thirdparty downloads.">
<ant antfile="${basedir}/downloads.xml" target="clean" dir="${basedir}"/>
</target>
-
+
<target name="generated-clean">
<delete includeEmptyDirs="true" quiet="true">
- <fileset dir="${basedir}/apps" includes="**/generated/*" />
+ <fileset dir="${basedir}/apps" includes="**/generated/*"/>
</delete>
<delete includeEmptyDirs="true" quiet="true">
- <fileset dir="${basedir}/apps" includes="**/generated" />
+ <fileset dir="${basedir}/apps" includes="**/generated"/>
</delete>
</target>
<target name="unit" description="Runs JUnit tests">
- <ant antfile="${basedir}/modules/core/build.xml" target="unit">
- <property name="feature" value="${feature}" /> <!-- runs subset of unit tests -->
+ <ant antfile="${basedir}/modules/core/build.xml" target="unit">
+ <property name="feature" value="${feature}"/> <!-- runs subset of unit tests -->
</ant>
</target>
<!-- Don't try to start server if it is already running -->
- <target name="check.server">
+ <target name="check.server">
<condition property="server.running">
<http url="${server.baseurl}"/>
</condition>
- </target>
+ </target>
<target name="set.extension" description="set vars per os">
<osfamily property="os.family"/>
@@ -672,20 +691,20 @@ Each of the main targets for the modules will call clean themselves before proce
<target name="startserver" description="Start Tomcat Server" depends="set.extension, check.server"
unless="server.running">
<exec spawn="true" executable="${appserver.dir}/bin/catalina.${shellext}"
- dir="${appserver.dir}/bin">
- <arg line="start" />
- </exec>
+ dir="${appserver.dir}/bin">
+ <arg line="start"/>
+ </exec>
</target>
<target name="stopserver" description="Stop Tomcat Server"
- depends="set.extension">
+ depends="set.extension">
<exec spawn="true" executable="${appserver.dir}/bin/catalina.${shellext}"
- dir="${appserver.dir}/bin">
- <arg line="stop" />
+ dir="${appserver.dir}/bin">
+ <arg line="stop"/>
</exec>
</target>
-
- <target name="waitforAppserverToStart" >
+
+ <target name="waitforAppserverToStart">
<echo message="Waiting for appserver to start: requesting ${server.baseurl}/qa-regress"/>
<waitfor maxwait="120" maxwaitunit="second" checkevery="15" timeoutproperty="bTimeout">
<http url="${server.baseurl}/qa-regress"/>
@@ -702,81 +721,82 @@ Each of the main targets for the modules will call clean themselves before proce
</target>
<target name="checkintests" description="checkintests">
-
+
<!-- run flexunit-->
- <ant antfile="${qa.dir}/apps/qa-regress/testsuites/flexunit/build.xml" target="main" >
- <property name="basedir" value="${qa.dir}" />
- <property name="feature" value="checkintests" /> <!-- runs rpc and messaging -->
- <property name="alwaysshowreport" value="false" /> <!-- will only show report if there are failures -->
+ <ant antfile="${qa.dir}/apps/qa-regress/testsuites/flexunit/build.xml" target="main">
+ <property name="basedir" value="${qa.dir}"/>
+ <property name="feature" value="checkintests"/> <!-- runs rpc and messaging -->
+ <property name="alwaysshowreport" value="false"/> <!-- will only show report if there are failures -->
</ant>
-
+
<!-- JUnit tests already start the server, if necessary
<antcall target="startserver"/>
-->
<!-- run java unit tests -->
<property name="feature" value="checkintests-all"/>
- <antcall target="unit" >
- <param name="feature" value="${feature}" /> <!-- runs subset of unit tests -->
+ <antcall target="unit">
+ <param name="feature" value="${feature}"/> <!-- runs subset of unit tests -->
</antcall>
<antcall target="stopserver"/>
</target>
<target name="parseresults">
- <java classname="utils.TestResultsParser">
+ <java classname="utils.TestResultsParser">
<classpath>
<pathelement location="${qa.dir}/classes"/>
<fileset dir="${qa.dir}/lib">
- <include name="*.jar" />
+ <include name="*.jar"/>
</fileset>
</classpath>
<arg line="${qa.dir}/sdk/testsuites/mxunit/reports"/>
</java>
</target>
- <target name="ocx" description="Update the ActiveX player to the latest. You must CLOSE YOUR BROWSERS for this to work.">
+ <target name="ocx"
+ description="Update the ActiveX player to the latest. You must CLOSE YOUR BROWSERS for this to work.">
<property name="ant-contrib.jar" location="${env.ANT_HOME}/lib/ant-contrib-1.0b2.jar"/>
-
- <available file="${basedir}/qa/automation/bin/${uninstaller.exe}" property="uninstaller.exists" />
+
+ <available file="${basedir}/qa/automation/bin/${uninstaller.exe}" property="uninstaller.exists"/>
<condition property="uninstall.fp" value="true">
<and>
- <equals arg1="${uninstaller.exists}" arg2="true" />
+ <equals arg1="${uninstaller.exists}" arg2="true"/>
<not>
- <equals arg1="${skip.uninstall}" arg2="true" />
+ <equals arg1="${skip.uninstall}" arg2="true"/>
</not>
</and>
</condition>
- <antcall target="actual.uninstall.fp" />
+ <antcall target="actual.uninstall.fp"/>
<echo>Installing the new player.</echo>
<exec dir="${basedir}/bin" executable="${basedir}/bin/${installer.exe}">
- <arg line="-install"/>
+ <arg line="-install"/>
</exec>
<echo>Installing the plugin player.</echo>
<exec dir="${basedir}/bin" executable="${basedir}/bin/${installer.plugin.exe}">
- <arg line="-install"/>
+ <arg line="-install"/>
</exec>
</target>
<target name="actual.uninstall.fp" depends="check.uninstall.fp" if="uninstall.fp">
<echo>Uninstalling the old ActiveX and Plugin players.</echo>
- <exec dir="${basedir}" executable="${basedir}/qa/automation/bin/${uninstaller.exe}" >
- <arg line="-uninstall" />
+ <exec dir="${basedir}" executable="${basedir}/qa/automation/bin/${uninstaller.exe}">
+ <arg line="-uninstall"/>
</exec>
</target>
- <target name="check.uninstall.fp" unless="uninstall.fp" >
+ <target name="check.uninstall.fp" unless="uninstall.fp">
<echo>Uninstall was skipped.</echo>
- <echo> - skip.uninstall? ${skip.uninstall}</echo>
+ <echo>- skip.uninstall? ${skip.uninstall}</echo>
</target>
<target name="javadoc">
- <delete dir="${basedir}/docs" failonerror="false" includeEmptyDirs="true" />
- <ant antfile="${basedir}/modules/core/build.xml" target="javadoc" >
+ <delete dir="${basedir}/docs" failonerror="false" includeEmptyDirs="true"/>
+ <ant antfile="${basedir}/modules/core/build.xml" target="javadoc">
<property name="build.number" value="${build.number}"/>
</ant>
- <copy todir="${dist.dir}/docs" >
+ <copy todir="${dist.dir}/docs">
<fileset dir="${basedir}/docs" includes="javadoc.zip"/>
</copy>
</target>
-
+
</project>
diff --git a/common/build.xml b/common/build.xml
index 64ba662..e132383 100755
--- a/common/build.xml
+++ b/common/build.xml
@@ -28,11 +28,11 @@
<property name="module.src" value="${module.dir}/src"/>
<property name="module.classes" value="${module.dir}/classes"/>
<property name="module.jar" value="${lib.dir}/flex-messaging-common.jar"/>
- <property name="license.file" value="${basedir}/LICENSE" />
- <property name="notice.file" value="${basedir}/NOTICE" />
-
+ <property name="license.file" value="${basedir}/LICENSE"/>
+ <property name="notice.file" value="${basedir}/NOTICE"/>
+
<property name="build.number" value=""/>
-
+
<!-- j2ee apis required to compile -->
<path id="classpath">
<fileset dir="${xalan.dir}" includes="xalan-${xalan.version}.jar"/>
@@ -53,32 +53,32 @@
<target name="compile" depends="prepare" description="compile">
<javac target="1.4" source="1.4" debug="${src.debug}" destdir="${module.classes}" srcdir="${module.src}"
- includes="**/*.java" classpathref="classpath"/>
+ includes="**/*.java" classpathref="classpath"/>
<echo file="${module.classes}/flex/messaging/version.properties" append="false">build=${build.number}</echo>
</target>
-
+
<!-- jar containing messaging common infrastructure -->
<target name="jar" depends="compile">
<copy todir="${module.classes}/flex/messaging" overwrite="true">
<fileset dir="${module.src}/flex/messaging" includes="*.properties"/>
</copy>
<delete dir="${module.classes}/meta-inf" quiet="true"/>
-
+
<mkdir dir="${module.classes}/META-INF"/>
<copy file="${license.file}" tofile="${module.classes}/META-INF/LICENSE"/>
<copy file="${notice.file}" tofile="${module.classes}/META-INF/NOTICE"/>
-
+
<jar destfile="${module.jar}" basedir="${module.classes}">
<include name="META-INF/LICENSE"/>
<include name="META-INF/NOTICE"/>
<include name="flex/**"/>
<exclude name=".dependency-info/**"/>
- <manifest>
- <attribute name="Sealed" value="${manifest.sealed}"/>
- <attribute name="Implementation-Title" value="${manifest.Implementation-Title} - Common Library"/>
- <attribute name="Implementation-Version" value="${manifest.Implementation-Version}.${build.number}"/>
- <attribute name="Implementation-Vendor" value="${manifest.Implementation-Vendor}"/>
- </manifest>
+ <manifest>
+ <attribute name="Sealed" value="${manifest.sealed}"/>
+ <attribute name="Implementation-Title" value="${manifest.Implementation-Title} - Common Library"/>
+ <attribute name="Implementation-Version" value="${manifest.Implementation-Version}.${build.number}"/>
+ <attribute name="Implementation-Vendor" value="${manifest.Implementation-Vendor}"/>
+ </manifest>
</jar>
<delete failonerror="false">
<fileset dir="${module.classes}/flex/messaging" includes="*.properties"/>
diff --git a/common/pom.xml b/common/pom.xml
index 08b1df1..f9bf841 100755
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -16,28 +16,29 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.flex.blazeds</groupId>
- <artifactId>blazeds</artifactId>
- <version>4.7.3</version>
- </parent>
-
- <artifactId>flex-messaging-common</artifactId>
-
- <dependencies>
- <dependency>
- <groupId>xalan</groupId>
- <artifactId>xalan</artifactId>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.flex.blazeds</groupId>
+ <artifactId>blazeds</artifactId>
+ <version>4.8.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>flex-messaging-common</artifactId>
+
+ <dependencies>
+ <dependency>
+ <groupId>xalan</groupId>
+ <artifactId>xalan</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
</project>
diff --git a/common/src/main/java/flex/graphics/ImageSnapshot.java b/common/src/main/java/flex/graphics/ImageSnapshot.java
index 1dc97f0..12b956a 100644
--- a/common/src/main/java/flex/graphics/ImageSnapshot.java
+++ b/common/src/main/java/flex/graphics/ImageSnapshot.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+
package flex.graphics;
import java.util.HashMap;
@@ -22,19 +22,16 @@ import java.util.Map;
/**
* This class corresponds to mx.graphics.ImageSnapshot on the client. Clients may choose
- * to capture images and send them to the server via a RemoteObject call. The PDF generation
- * feature of LCDS may then be used to generate PDF's from these images.
- *
+ * to capture images and send them to the server via a RemoteObject call. The PDF generation
+ * feature of LCDS may then be used to generate PDF's from these images.
*/
-public class ImageSnapshot extends HashMap
-{
+public class ImageSnapshot extends HashMap {
private static final long serialVersionUID = 7914317354403674061L;
/**
* Default constructor.
*/
- public ImageSnapshot()
- {
+ public ImageSnapshot() {
}
private Map properties;
@@ -46,101 +43,91 @@ public class ImageSnapshot extends HashMap
/**
* The content type for the image encoding format that was used to capture
* this snapshot.
- *
+ *
* @return content type of this image
*/
- public String getContentType()
- {
+ public String getContentType() {
return contentType;
}
/**
* Sets content type of this snapshot.
- *
+ *
* @param value content type
*/
- public void setContentType(String value)
- {
+ public void setContentType(String value) {
contentType = value;
}
/**
* The encoded data representing the image snapshot.
- *
+ *
* @return encoded image data
*/
- public byte[] getData()
- {
+ public byte[] getData() {
return data;
}
/**
* Set the encoded data representing the image snapshot.
- *
+ *
* @param value byte array of image data
*/
- public void setData(byte[] value)
- {
+ public void setData(byte[] value) {
data = value;
}
/**
* The image height in pixels.
- *
+ *
* @return image height in pixels
*/
- public int getHeight()
- {
+ public int getHeight() {
return height;
}
/**
* Set image height in pixels.
- *
+ *
* @param value image height in pixels.
*/
- public void setHeight(int value)
- {
+ public void setHeight(int value) {
height = value;
}
/**
* Additional properties of the image.
- *
+ *
* @return a map containing the dynamically set properties on this snapshot
*/
- public Map getProperties()
- {
+ public Map getProperties() {
return properties;
}
/**
* Sets the map of dynamic properties for this snapshot.
- *
+ *
* @param value map containing dynamic properties for this snapshot
*/
- public void setProperties(Map value)
- {
+ public void setProperties(Map value) {
properties = value;
}
/**
* The image width in pixels.
- *
+ *
* @return width in pixels
*/
- public int getWidth()
- {
+ public int getWidth() {
return width;
}
/**
* Set width in pixels.
- *
+ *
* @param value width in pixels.
*/
- public void setWidth(int value)
- {
+ public void setWidth(int value) {
width = value;
}
diff --git a/common/src/main/java/flex/messaging/LocalizedException.java b/common/src/main/java/flex/messaging/LocalizedException.java
index 641f7be..2ecc3c9 100644
--- a/common/src/main/java/flex/messaging/LocalizedException.java
+++ b/common/src/main/java/flex/messaging/LocalizedException.java
@@ -28,10 +28,10 @@ import flex.messaging.util.ResourceLoader;
* number and an optional message variant that is used to look up a localized error
* message or details string using a <code>ResourceLoader</code>. These methods also
* set the number property of the exception instance.
- *
+ * <p>
* The various overloads optionally support specifying a target locale as well as
* arguments to substitute into the localized string if it is parameterized.
- *
+ * <p>
* Localized error message and details strings are stored in the flex.messaging.errors
* resource bundle. Entries must have the following format.
* <ul>
@@ -41,9 +41,10 @@ import flex.messaging.util.ResourceLoader;
*
* @see ResourceLoader
*/
-public class LocalizedException extends RuntimeException
-{
- /** - transient, the resourceLoader for localized strings doesn't need to serialize. */
+public class LocalizedException extends RuntimeException {
+ /**
+ * - transient, the resourceLoader for localized strings doesn't need to serialize.
+ */
protected transient ResourceLoader resourceLoader;
protected int number;
@@ -64,8 +65,7 @@ public class LocalizedException extends RuntimeException
/**
* Create a LocalizedException with the default ResourceLoader.
*/
- public LocalizedException()
- {
+ public LocalizedException() {
super();
}
@@ -75,8 +75,7 @@ public class LocalizedException extends RuntimeException
*
* @param resourceLoader The resource loader to use.
*/
- public LocalizedException(ResourceLoader resourceLoader)
- {
+ public LocalizedException(ResourceLoader resourceLoader) {
this.resourceLoader = resourceLoader;
}
@@ -85,8 +84,7 @@ public class LocalizedException extends RuntimeException
*
* @return The exception details.
*/
- public String getDetails()
- {
+ public String getDetails() {
return details;
}
@@ -95,8 +93,7 @@ public class LocalizedException extends RuntimeException
*
* @param details The exception details.
*/
- public void setDetails(String details)
- {
+ public void setDetails(String details) {
this.details = details;
}
@@ -105,8 +102,7 @@ public class LocalizedException extends RuntimeException
*
* @param number The error number for this exception instance.
*/
- public void setMessage(int number)
- {
+ public void setMessage(int number) {
setMessage(number, null, null, null);
}
@@ -116,8 +112,7 @@ public class LocalizedException extends RuntimeException
* @param number The error number for this exception instance.
* @param locale The target locale for error message lookup.
*/
- public void setMessage(int number, Locale locale)
- {
+ public void setMessage(int number, Locale locale) {
setMessage(number, null, locale, null);
}
@@ -125,22 +120,20 @@ public class LocalizedException extends RuntimeException
* Sets the message property to a localized string based on error number.
* The passed arguments are substituted into the parameterized error message string.
*
- * @param number The error number for this exception instance.
+ * @param number The error number for this exception instance.
* @param arguments The arguments to substitute into the error message.
*/
- public void setMessage(int number, Object[] arguments)
- {
+ public void setMessage(int number, Object[] arguments) {
setMessage(number, null, null, arguments);
}
/**
* Sets the message property to a localized string based on error number and variant.
*
- * @param number The error number for this exception instance.
+ * @param number The error number for this exception instance.
* @param variant The variant of the error message for this instance.
*/
- public void setMessage(int number, String variant)
- {
+ public void setMessage(int number, String variant) {
setMessage(number, variant, null, null);
}
@@ -148,12 +141,11 @@ public class LocalizedException extends RuntimeException
* Sets the message property to a localized string based on error number, variant
* and target locale.
*
- * @param number The error number for this exception instance.
+ * @param number The error number for this exception instance.
* @param variant The variant of the error message for this instance.
- * @param locale The target locale for error message lookup.
+ * @param locale The target locale for error message lookup.
*/
- public void setMessage(int number, String variant, Locale locale)
- {
+ public void setMessage(int number, String variant, Locale locale) {
setMessage(number, variant, locale, null);
}
@@ -161,12 +153,11 @@ public class LocalizedException extends RuntimeException
* Sets the message property to a localized string based on error number and variant.
* The passed arguments are substituted into the parameterized error message string.
*
- * @param number The error number for this exception instance.
- * @param variant The varient of the error message for this instance.
+ * @param number The error number for this exception instance.
+ * @param variant The varient of the error message for this instance.
* @param arguments The arguments to substitute into the error message.
*/
- public void setMessage(int number, String variant, Object[] arguments)
- {
+ public void setMessage(int number, String variant, Object[] arguments) {
setMessage(number, variant, null, arguments);
}
@@ -175,13 +166,12 @@ public class LocalizedException extends RuntimeException
* target locale. The passed arguments are substituted into the parameterized error
* message string.
*
- * @param number The error number for this exception instance.
- * @param variant The variant of the error message for this instance.
- * @param locale The target locale for error message lookup.
+ * @param number The error number for this exception instance.
+ * @param variant The variant of the error message for this instance.
+ * @param locale The target locale for error message lookup.
* @param arguments The arguments to substitute into the error message.
*/
- public void setMessage(int number, String variant, Locale locale, Object[] arguments)
- {
+ public void setMessage(int number, String variant, Locale locale, Object[] arguments) {
setNumber(number);
ResourceLoader resources = getResourceLoader();
setMessage(resources.getString(generateFullKey(number, variant), locale, arguments));
@@ -192,8 +182,7 @@ public class LocalizedException extends RuntimeException
*
* @return The exception message.
*/
- public String getMessage()
- {
+ public String getMessage() {
return message;
}
@@ -202,8 +191,7 @@ public class LocalizedException extends RuntimeException
*
* @param message The exception message.
*/
- public void setMessage(String message)
- {
+ public void setMessage(String message) {
this.message = message;
}
@@ -212,8 +200,7 @@ public class LocalizedException extends RuntimeException
*
* @param number The localized exception number.
*/
- public void setNumber(int number)
- {
+ public void setNumber(int number) {
this.number = number;
}
@@ -222,8 +209,7 @@ public class LocalizedException extends RuntimeException
*
* @return The localized exception number.
*/
- public int getNumber()
- {
+ public int getNumber() {
return number;
}
@@ -232,19 +218,17 @@ public class LocalizedException extends RuntimeException
*
* @param number The error number to lookup details for.
*/
- public void setDetails(int number)
- {
+ public void setDetails(int number) {
setDetails(number, null, null, null);
}
/**
* Sets the details property to a localized string based on error number and variant.
*
- * @param number The error number to lookup details for.
+ * @param number The error number to lookup details for.
* @param variant The variant of the details string to lookup.
*/
- public void setDetails(int number, String variant)
- {
+ public void setDetails(int number, String variant) {
setDetails(number, variant, null, null);
}
@@ -252,12 +236,11 @@ public class LocalizedException extends RuntimeException
* Sets the details property to a localized string based on error number, variant
* and target locale.
*
- * @param number The error number to lookup details for.
+ * @param number The error number to lookup details for.
* @param variant The variant of the details string to lookup.
- * @param locale The target locale for the lookup.
+ * @param locale The target locale for the lookup.
*/
- public void setDetails(int number, String variant, Locale locale)
- {
+ public void setDetails(int number, String variant, Locale locale) {
setDetails(number, variant, locale, null);
}
@@ -265,12 +248,11 @@ public class LocalizedException extends RuntimeException
* Sets the details property to a localized string based on error number and variant.
* The passed arguments are substituted into the parameterized error details string.
*
- * @param number The error number to lookup details for.
- * @param variant The variant of the details string to lookup.
+ * @param number The error number to lookup details for.
+ * @param variant The variant of the details string to lookup.
* @param arguments The arguments to substitute into the details string.
*/
- public void setDetails(int number, String variant, Object[] arguments)
- {
+ public void setDetails(int number, String variant, Object[] arguments) {
setDetails(number, variant, null, arguments);
}
@@ -280,13 +262,12 @@ public class LocalizedException extends RuntimeException
* and target locale. The passed arguments are substituted into the parameterized error
* details string.
*
- * @param number The error number to lookup a localized details string for.
- * @param variant The variant of the details string to lookup.
- * @param locale The target locale for the lookup.
+ * @param number The error number to lookup a localized details string for.
+ * @param variant The variant of the details string to lookup.
+ * @param locale The target locale for the lookup.
* @param arguments The arguments to substitute into the details string.
*/
- public void setDetails(int number, String variant, Locale locale, Object[] arguments)
- {
+ public void setDetails(int number, String variant, Locale locale, Object[] arguments) {
setNumber(number);
ResourceLoader resources = getResourceLoader();
setDetails(resources.getString(generateDetailsKey(number, variant), locale, arguments));
@@ -297,8 +278,7 @@ public class LocalizedException extends RuntimeException
*
* @return The root cause for this exception.
*/
- public Throwable getRootCause()
- {
+ public Throwable getRootCause() {
return rootCause;
}
@@ -307,8 +287,7 @@ public class LocalizedException extends RuntimeException
*
* @param cause The root cause for this exception.
*/
- public void setRootCause(Throwable cause)
- {
+ public void setRootCause(Throwable cause) {
rootCause = cause;
// Assign through to the base cause property to include it in general stack traces.
initCause(cause);
@@ -319,8 +298,7 @@ public class LocalizedException extends RuntimeException
*
* @return The <code>ResourceLoader</code> used to load localized strings.
*/
- protected ResourceLoader getResourceLoader()
- {
+ protected ResourceLoader getResourceLoader() {
if (resourceLoader == null)
resourceLoader = new PropertyStringResourceLoader();
@@ -332,12 +310,11 @@ public class LocalizedException extends RuntimeException
* and an optional variant followed by a "-details" suffix. If the variant is null, the
* lookup key is the error number.
*
- * @param number The error number.
+ * @param number The error number.
* @param variant The variant of the error message.
* @return The full lookup key for a localized error message.
*/
- private String generateFullKey(int number, String variant)
- {
+ private String generateFullKey(int number, String variant) {
return (variant != null) ? (number + "-" + variant) : String.valueOf(number);
}
@@ -346,12 +323,11 @@ public class LocalizedException extends RuntimeException
* and an optional variant followed by a "-details" suffix. If the variant is null, the
* lookup key is the error number followed by a "-details" suffix.
*
- * @param number The error number.
+ * @param number The error number.
* @param variant The variant of the details message.
* @return The full lookup key for a localized details message.
*/
- private String generateDetailsKey(int number, String variant)
- {
+ private String generateDetailsKey(int number, String variant) {
return (generateFullKey(number, variant) + "-details");
}
@@ -360,14 +336,11 @@ public class LocalizedException extends RuntimeException
*
* @return A string representation of the exception.
*/
- public String toString()
- {
+ public String toString() {
String result = super.toString();
- if (details != null)
- {
+ if (details != null) {
StringBuffer buffer = new StringBuffer(result);
- if (!result.endsWith("."))
- {
+ if (!result.endsWith(".")) {
buffer.append(".");
}
buffer.append(' ').append(details);
diff --git a/common/src/main/java/flex/messaging/config/AbstractConfigurationParser.java b/common/src/main/java/flex/messaging/config/AbstractConfigurationParser.java
index 297f6fc..656f634 100644
--- a/common/src/main/java/flex/messaging/config/AbstractConfigurationParser.java
+++ b/common/src/main/java/flex/messaging/config/AbstractConfigurationParser.java
@@ -41,8 +41,7 @@ import flex.messaging.util.FileUtils;
/**
* Provides a common base for DOM / XPath based ConfigurationParsers.
*/
-public abstract class AbstractConfigurationParser implements ConfigurationParser, ConfigurationConstants, EntityResolver
-{
+public abstract class AbstractConfigurationParser implements ConfigurationParser, ConfigurationConstants, EntityResolver {
protected ServicesConfiguration config;
protected DocumentBuilder docBuilder;
protected ConfigurationFileResolver fileResolver;
@@ -50,8 +49,7 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
private Map fileByDocument = new HashMap();
- protected AbstractConfigurationParser()
- {
+ protected AbstractConfigurationParser() {
initializeDocumentBuilder();
tokenReplacer = new TokenReplacer();
}
@@ -59,12 +57,11 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
/**
* Parse the configurations in the configuration file.
*
- * @param path the configuration file path
+ * @param path the configuration file path
* @param fileResolver the ConfigurationFileResolver object
- * @param config the ServicesConfiguration object
+ * @param config the ServicesConfiguration object
**/
- public void parse(String path, ConfigurationFileResolver fileResolver, ServicesConfiguration config)
- {
+ public void parse(String path, ConfigurationFileResolver fileResolver, ServicesConfiguration config) {
this.config = config;
this.fileResolver = fileResolver;
Document doc = loadDocument(path, fileResolver.getConfigurationFile(path));
@@ -75,24 +72,19 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
/**
* Report Tokens.
**/
- public void reportTokens()
- {
+ public void reportTokens() {
tokenReplacer.reportTokens();
}
- protected void initializeDocumentBuilder()
- {
+ protected void initializeDocumentBuilder() {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setIgnoringComments(true);
factory.setIgnoringElementContentWhitespace(true);
- try
- {
+ try {
docBuilder = factory.newDocumentBuilder();
docBuilder.setEntityResolver(this);
- }
- catch (ParserConfigurationException ex)
- {
+ } catch (ParserConfigurationException ex) {
// Error initializing configuration parser.
ConfigurationException e = new ConfigurationException();
e.setMessage(PARSER_INIT_ERROR);
@@ -101,10 +93,8 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
}
}
- protected Document loadDocument(String path, InputStream in)
- {
- try
- {
+ protected Document loadDocument(String path, InputStream in) {
+ try {
Document doc;
if (!in.markSupported())
@@ -113,23 +103,18 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
// Consume UTF-8 Byte Order Mark (BOM). The InputStream must support mark()
// as FileUtils.consumeBOM sets a mark for 3 bytes in order to check for a BOM.
String encoding = FileUtils.consumeBOM(in, null);
- if (FileUtils.UTF_8.equals(encoding) || FileUtils.UTF_16.equals(encoding))
- {
+ if (FileUtils.UTF_8.equals(encoding) || FileUtils.UTF_16.equals(encoding)) {
InputSource inputSource = new InputSource(in);
inputSource.setEncoding(encoding);
doc = docBuilder.parse(inputSource);
- }
- else
- {
+ } else {
doc = docBuilder.parse(in);
}
addFileByDocument(path, doc);
doc.getDocumentElement().normalize();
return doc;
- }
- catch (SAXParseException ex)
- {
+ } catch (SAXParseException ex) {
Integer line = new Integer(ex.getLineNumber());
Integer col = new Integer(ex.getColumnNumber());
String message = ex.getMessage();
@@ -139,16 +124,12 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
e.setMessage(XML_PARSER_ERROR, new Object[]{line, col, message});
e.setRootCause(ex);
throw e;
- }
- catch (SAXException ex)
- {
+ } catch (SAXException ex) {
ConfigurationException e = new ConfigurationException();
e.setMessage(ex.getMessage());
e.setRootCause(ex);
throw e;
- }
- catch (IOException ex)
- {
+ } catch (IOException ex) {
ConfigurationException e = new ConfigurationException();
e.setMessage(ex.getMessage());
e.setRootCause(ex);
@@ -156,15 +137,12 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
}
}
- protected void addFileByDocument(String path, Node node)
- {
+ protected void addFileByDocument(String path, Node node) {
String shortPath = path;
- if (shortPath != null && ((shortPath.indexOf('/') != -1) || (shortPath.indexOf("\\") != -1)) )
- {
+ if (shortPath != null && ((shortPath.indexOf('/') != -1) || (shortPath.indexOf("\\") != -1))) {
int start = 0;
start = shortPath.lastIndexOf('/');
- if (start == -1)
- {
+ if (start == -1) {
start = shortPath.lastIndexOf("\\");
}
shortPath = path.substring(start + 1);
@@ -172,16 +150,18 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
fileByDocument.put(node, shortPath);
}
- protected String getSourceFileOf(Node node)
- {
- return (String)fileByDocument.get(node.getOwnerDocument());
+ protected String getSourceFileOf(Node node) {
+ return (String) fileByDocument.get(node.getOwnerDocument());
}
protected abstract void parseTopLevelConfig(Document doc);
protected abstract void initializeExpressionQuery();
+
protected abstract Node selectSingleNode(Node source, String expression);
+
protected abstract NodeList selectNodeList(Node source, String expression);
+
protected abstract Object evaluateExpression(Node source, String expression);
/**
@@ -201,11 +181,11 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
* The sourceFileName argument is used as a parameter for token replacement in order
* to generate a meaningful error message when a token is failed to be replaced.
* </p>
+ *
* @param properties the NodeList object
* @return ConfigMap the ConfigMap object
*/
- public ConfigMap properties(NodeList properties)
- {
+ public ConfigMap properties(NodeList properties) {
return properties(properties, ConfigurationConstants.UNKNOWN_SOURCE_FILE);
}
@@ -213,29 +193,24 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
* Recursively processes all child elements for each of the properties in the provided
* node list.
*
- * @param properties the NodeList object
+ * @param properties the NodeList object
* @param sourceFileName the source file name
* @return ConfigMap the ConfigMap object
*/
- public ConfigMap properties(NodeList properties, String sourceFileName)
- {
+ public ConfigMap properties(NodeList properties, String sourceFileName) {
int length = properties.getLength();
ConfigMap map = new ConfigMap(length);
- for (int p = 0; p < length; p++)
- {
+ for (int p = 0; p < length; p++) {
Node prop = properties.item(p);
String propName = prop.getNodeName();
- if (propName != null)
- {
+ if (propName != null) {
propName = propName.trim();
- if (prop.getNodeType() == Node.ELEMENT_NODE)
- {
+ if (prop.getNodeType() == Node.ELEMENT_NODE) {
NodeList attributes = selectNodeList(prop, "@*");
NodeList children = selectNodeList(prop, "*");
- if (children.getLength() > 0 || attributes.getLength() > 0)
- {
+ if (children.getLength() > 0 || attributes.getLength() > 0) {
ConfigMap childMap = new ConfigMap();
if (children.getLength() > 0)
@@ -245,17 +220,13 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
childMap.addProperties(properties(attributes, sourceFileName));
map.addProperty(propName, childMap);
- }
- else
- {
+ } else {
// replace tokens before setting property
tokenReplacer.replaceToken(prop, sourceFileName);
String propValue = evaluateExpression(prop, ".").toString();
map.addProperty(propName, propValue);
}
- }
- else
- {
+ } else {
// replace tokens before setting property
tokenReplacer.replaceToken(prop, sourceFileName);
map.addProperty(propName, prop.getNodeValue());
@@ -265,37 +236,33 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
return map;
}
-
+
/**
- * Get the item value by name if the item is present in the current node as attribute or child element.
+ * Get the item value by name if the item is present in the current node as attribute or child element.
*
* @param node the current Node object
* @param name item name
* @return String the value of item
**/
- public String getAttributeOrChildElement(Node node, String name)
- {
+ public String getAttributeOrChildElement(Node node, String name) {
String attr = evaluateExpression(node, "@" + name).toString().trim();
- if (attr.length() == 0)
- {
+ if (attr.length() == 0) {
attr = evaluateExpression(node, name).toString().trim();
}
return attr;
}
-
+
/**
- * Check whether the required items are present in the current node as child elements.
+ * Check whether the required items are present in the current node as child elements.
*
- * @param node the current Node object
+ * @param node the current Node object
* @param allowed the String array of the allowed items
**/
- public void allowedChildElements(Node node, String[] allowed)
- {
+ public void allowedChildElements(Node node, String[] allowed) {
NodeList children = selectNodeList(node, "*");
String unexpected = unexpected(children, allowed);
- if (unexpected != null)
- {
+ if (unexpected != null) {
// Unexpected child element '{0}' found in '{1}'.
ConfigurationException ex = new ConfigurationException();
Object[] args = {unexpected, node.getNodeName(), getSourceFilename(node)};
@@ -304,11 +271,9 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
}
NodeList textNodes = selectNodeList(node, "text()");
- for (int i = 0; i < textNodes.getLength(); i++)
- {
+ for (int i = 0; i < textNodes.getLength(); i++) {
String text = evaluateExpression(textNodes.item(i), ".").toString().trim();
- if (text.length() > 0)
- {
+ if (text.length() > 0) {
//Unexpected text '{0}' found in '{1}'.
ConfigurationException ex = new ConfigurationException();
Object[] args = {text, node.getNodeName(), getSourceFilename(node)};
@@ -317,78 +282,67 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
}
}
}
-
+
/**
- * Check whether the required items are present in the current node as attributes.
+ * Check whether the required items are present in the current node as attributes.
*
- * @param node the current Node object
+ * @param node the current Node object
* @param allowed the String array of the allowed items
**/
- public void allowedAttributes(Node node, String[] allowed)
- {
+ public void allowedAttributes(Node node, String[] allowed) {
NodeList attributes = selectNodeList(node, "@*");
String unexpectedAttribute = unexpected(attributes, allowed);
- if (unexpectedAttribute != null)
- {
+ if (unexpectedAttribute != null) {
//Unexpected attribute '{0}' found in '{1}'.
ConfigurationException ex = new ConfigurationException();
Object[] args =
- {unexpectedAttribute, node.getNodeName(), getSourceFilename(node)};
+ {unexpectedAttribute, node.getNodeName(), getSourceFilename(node)};
ex.setMessage(UNEXPECTED_ATTRIBUTE, args);
throw ex;
}
}
- private String getSourceFilename(Node node)
- {
+ private String getSourceFilename(Node node) {
return getSourceFileOf(node);
}
-
+
/**
- * Check whether the allowed items are present in the current node as elements or attributes.
+ * Check whether the allowed items are present in the current node as elements or attributes.
*
- * @param node the current Node object
+ * @param node the current Node object
* @param allowed the String array of the allowed items
**/
- public void allowedAttributesOrElements(Node node, String[] allowed)
- {
+ public void allowedAttributesOrElements(Node node, String[] allowed) {
allowedAttributes(node, allowed);
allowedChildElements(node, allowed);
}
/**
- * Check whether the required items are present in the current node as elements or attributes.
+ * Check whether the required items are present in the current node as elements or attributes.
*
- * @param node the current Node object
+ * @param node the current Node object
* @param required the String array of the required items
**/
- public void requiredAttributesOrElements(Node node, String[] required)
- {
+ public void requiredAttributesOrElements(Node node, String[] required) {
String nodeName = node.getNodeName();
NodeList attributes = selectNodeList(node, "@*");
List list = new ArrayList();
- for (int i = 0; i < required.length; i++)
- {
+ for (int i = 0; i < required.length; i++) {
list.add(required[i]);
}
String missingAttribute = null;
- do
- {
+ do {
missingAttribute = required(attributes, list);
- if (missingAttribute != null)
- {
+ if (missingAttribute != null) {
Node child = selectSingleNode(node, missingAttribute);
- if (child != null)
- {
+ if (child != null) {
list.remove(missingAttribute);
- }
- else
- {
+ } else {
// Attribute '{0}' must be specified for element '{1}'
ConfigurationException ex = new ConfigurationException();
ex.setMessage(MISSING_ATTRIBUTE, new Object[]{missingAttribute, nodeName});
@@ -400,25 +354,22 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
}
/**
- * Check whether the required items are present in the current node (Child elements).
+ * Check whether the required items are present in the current node (Child elements).
*
- * @param node the current Node object
+ * @param node the current Node object
* @param required the String array of the required items
**/
- public void requiredChildElements(Node node, String[] required)
- {
+ public void requiredChildElements(Node node, String[] required) {
String nodeName = node.getNodeName();
NodeList children = selectNodeList(node, "*");
List list = new ArrayList();
- for (int i = 0; i < required.length; i++)
- {
+ for (int i = 0; i < required.length; i++) {
list.add(required[i]);
}
String missing = required(children, list);
- if (missing != null)
- {
+ if (missing != null) {
// Child element '{0}' must be specified for element '{1}'
ConfigurationException ex = new ConfigurationException();
ex.setMessage(MISSING_ELEMENT, new Object[]{missing, nodeName});
@@ -430,30 +381,25 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
* Check whether there is any unexpected item in the node list object.
*
* @param attributes the current NodeList object
- * @param allowed, the String array of allowed items
+ * @param allowed, the String array of allowed items
* @return Name of the first unexpected item from the list of allowed attributes, or null if all
- * items present were allowed.
+ * items present were allowed.
**/
- public String unexpected(NodeList attributes, String[] allowed)
- {
- for (int i = 0; i < attributes.getLength(); i++)
- {
+ public String unexpected(NodeList attributes, String[] allowed) {
+ for (int i = 0; i < attributes.getLength(); i++) {
Node attrib = attributes.item(i);
String attribName = attrib.getNodeName();
boolean match = false;
- for (int j = 0; j < allowed.length; j++)
- {
+ for (int j = 0; j < allowed.length; j++) {
String a = allowed[j];
- if (a.equals(attribName))
- {
+ if (a.equals(attribName)) {
match = true;
break;
}
}
- if (!match)
- {
+ if (!match) {
return attribName;
}
@@ -466,33 +412,29 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
/**
* Check whether all the required items are present in the node list.
+ *
* @param attributes the NodeList object
- * @param required a list of required items
+ * @param required a list of required items
* @return Name of the first missing item from the list of required attributes, or null if all required
- * items were present.
+ * items were present.
**/
- public String required(NodeList attributes, List required)
- {
- for (int i = 0; i < required.size(); i++)
- {
+ public String required(NodeList attributes, List required) {
+ for (int i = 0; i < required.size(); i++) {
boolean found = false;
- String req = (String)required.get(i);
+ String req = (String) required.get(i);
Node attrib = null;
- for (int j = 0; j < attributes.getLength(); j++)
- {
+ for (int j = 0; j < attributes.getLength(); j++) {
attrib = attributes.item(j);
String attribName = attrib.getNodeName();
- if (req.equals(attribName))
- {
+ if (req.equals(attribName)) {
found = true;
break;
}
}
- if (!found)
- {
+ if (!found) {
return req;
}
@@ -511,20 +453,17 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
* greater than 0 characters in length and not contain
* any of the list delimiter characters, i.e. commas,
* semi-colons or colons.
+ *
* @param id the Id String
* @return boolean true if the id string is valid identification
* @see ConfigurationConstants#LIST_DELIMITERS
*/
- public static boolean isValidID(String id)
- {
- if (id != null && id.length() > 0 && id.length() < 256)
- {
+ public static boolean isValidID(String id) {
+ if (id != null && id.length() > 0 && id.length() < 256) {
char[] chars = id.toCharArray();
- for (int i = 0; i < chars.length; i++)
- {
+ for (int i = 0; i < chars.length; i++) {
char c = chars[i];
- if (LIST_DELIMITERS.indexOf(c) != -1)
- {
+ if (LIST_DELIMITERS.indexOf(c) != -1) {
return false;
}
}
@@ -534,23 +473,23 @@ public abstract class AbstractConfigurationParser implements ConfigurationParser
return false;
}
-
+
/**
* Implement {@link org.xml.sax.EntityResolver#resolveEntity(String, String)}.
- *
+ * <p>
* Flex Configuration does not need or use external entities, so disallow external entities
- * to prevent external entity injection attacks.
+ * to prevent external entity injection attacks.
+ *
* @param publicId the public Id
* @param systemId the system Id
* @return InputSource the InputSource object
* @throws SAXException when the parsing process failed with exceptions
- * @throws IOException when the parsing process failed with exceptions
+ * @throws IOException when the parsing process failed with exceptions
*/
- public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException
- {
+ public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException {
// Flex Configuration does not allow external entity defined by publicId {0} and SystemId {1}
ConfigurationException ex = new ConfigurationException();
- ex.setMessage(EXTERNAL_ENTITY_NOT_ALLOW, new Object[] { publicId, systemId });
+ ex.setMessage(EXTERNAL_ENTITY_NOT_ALLOW, new Object[]{publicId, systemId});
throw ex;
}
}
diff --git a/common/src/main/java/flex/messaging/config/AdapterSettings.java b/common/src/main/java/flex/messaging/config/AdapterSettings.java
index 8dea7ca..b280fec 100644
--- a/common/src/main/java/flex/messaging/config/AdapterSettings.java
+++ b/common/src/main/java/flex/messaging/config/AdapterSettings.java
@@ -25,8 +25,7 @@ package flex.messaging.config;
* properties.
* </p>
*/
-public class AdapterSettings extends PropertiesSettings
-{
+public class AdapterSettings extends PropertiesSettings {
private final String id;
private String sourceFile;
private String className;
@@ -38,10 +37,9 @@ public class AdapterSettings extends PropertiesSettings
* adapter.
*
* @param id the <code>String</code> representing the unique identity for
- * this adapter.
+ * this adapter.
*/
- public AdapterSettings(String id)
- {
+ public AdapterSettings(String id) {
super();
this.id = id;
}
@@ -51,8 +49,7 @@ public class AdapterSettings extends PropertiesSettings
*
* @return the adapter identity as a <code>String</code>.
*/
- public String getId()
- {
+ public String getId() {
return id;
}
@@ -61,8 +58,7 @@ public class AdapterSettings extends PropertiesSettings
*
* @return String The name of the adapter implementation.
*/
- public String getClassName()
- {
+ public String getClassName() {
return className;
}
@@ -73,8 +69,7 @@ public class AdapterSettings extends PropertiesSettings
*
* @param name the <code>String</code>
*/
- public void setClassName(String name)
- {
+ public void setClassName(String name) {
className = name;
}
@@ -85,8 +80,7 @@ public class AdapterSettings extends PropertiesSettings
*
* @return boolean true if this adapter is the default.
*/
- public boolean isDefault()
- {
+ public boolean isDefault() {
return defaultAdapter;
}
@@ -94,32 +88,27 @@ public class AdapterSettings extends PropertiesSettings
* Sets a flag to determine whether an adapter will be used as the default
* (for example, in the event that a destination did not specify an adapter
* explicitly).
- *
+ * <p>
* Only one default can be set for a given service.
*
* @param b a <code>boolean</code> flag, true if this adapter should be
- * used as the default for the service.
+ * used as the default for the service.
*/
- public void setDefault(boolean b)
- {
+ public void setDefault(boolean b) {
defaultAdapter = b;
}
/**
* Internal use only.
- *
*/
- String getSourceFile()
- {
+ String getSourceFile() {
return sourceFile;
}
/**
* Internal use only.
- *
*/
- void setSourceFile(String file)
- {
+ void setSourceFile(String file) {
this.sourceFile = file;
}
}
diff --git a/common/src/main/java/flex/messaging/config/ApacheXPathClientConfigurationParser.java b/common/src/main/java/flex/messaging/config/ApacheXPathClientConfigurationParser.java
index 2ad8764..64a7ecf 100644
--- a/common/src/main/java/flex/messaging/config/ApacheXPathClientConfigurationParser.java
+++ b/common/src/main/java/flex/messaging/config/ApacheXPathClientConfigurationParser.java
@@ -19,6 +19,7 @@ package flex.messaging.config;
import org.apache.xpath.CachedXPathAPI;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
+
import javax.xml.transform.TransformerException;
/**
@@ -28,59 +29,42 @@ import javax.xml.transform.TransformerException;
* NOTE: Since reference ids are used between elements, certain
* sections of the document need to be parsed first.
* </p>
- *
- *
*/
-public class ApacheXPathClientConfigurationParser extends ClientConfigurationParser
-{
+public class ApacheXPathClientConfigurationParser extends ClientConfigurationParser {
private CachedXPathAPI xpath;
- protected void initializeExpressionQuery()
- {
+ protected void initializeExpressionQuery() {
this.xpath = new CachedXPathAPI();
}
- protected Node selectSingleNode(Node source, String expression)
- {
- try
- {
+ protected Node selectSingleNode(Node source, String expression) {
+ try {
return xpath.selectSingleNode(source, expression);
- }
- catch (TransformerException transformerException)
- {
+ } catch (TransformerException transformerException) {
throw wrapException(transformerException);
}
}
- protected NodeList selectNodeList(Node source, String expression)
- {
- try
- {
+ protected NodeList selectNodeList(Node source, String expression) {
+ try {
return xpath.selectNodeList(source, expression);
- }
- catch (TransformerException transformerException)
- {
+ } catch (TransformerException transformerException) {
throw wrapException(transformerException);
}
}
- protected Object evaluateExpression(Node source, String expression)
- {
- try
- {
+ protected Object evaluateExpression(Node source, String expression) {
+ try {
return xpath.eval(source, expression);
- }
- catch (TransformerException transformerException)
- {
+ } catch (TransformerException transformerException) {
throw wrapException(transformerException);
}
}
- private ConfigurationException wrapException(TransformerException exception)
- {
- ConfigurationException result = new ConfigurationException();
- result.setDetails(PARSER_INTERNAL_ERROR);
- result.setRootCause(exception);
- return result;
+ private ConfigurationException wrapException(TransformerException exception) {
+ ConfigurationException result = new ConfigurationException();
+ result.setDetails(PARSER_INTERNAL_ERROR);
+ result.setRootCause(exception);
+ return result;
}
}
diff --git a/common/src/main/java/flex/messaging/config/ChannelSettings.java b/common/src/main/java/flex/messaging/config/ChannelSettings.java
index badc6e2..eb49c40 100644
--- a/common/src/main/java/flex/messaging/config/ChannelSettings.java
+++ b/common/src/main/java/flex/messaging/config/ChannelSettings.java
@@ -15,6 +15,7 @@
* limitations under the License.
*/
package flex.messaging.config;
+
import flex.messaging.util.StringUtils;
/**
@@ -23,11 +24,8 @@ import flex.messaging.util.StringUtils;
* server-endpoint specific and client code-generation specific settings
* to be modified without affecting needing to update the configuration
* parser.
- *
- *
*/
-public class ChannelSettings extends PropertiesSettings
-{
+public class ChannelSettings extends PropertiesSettings {
protected String id;
protected boolean remote;
protected String serverId;
@@ -47,63 +45,51 @@ public class ChannelSettings extends PropertiesSettings
protected String parsedClientUri;
protected boolean clientContextParsed;
- public ChannelSettings(String id)
- {
+ public ChannelSettings(String id) {
this.id = id;
}
- public String getId()
- {
+ public String getId() {
return id;
}
- public boolean isRemote()
- {
+ public boolean isRemote() {
return remote;
}
- public void setRemote(boolean value)
- {
+ public void setRemote(boolean value) {
remote = value;
}
- public String getServerId()
- {
+ public String getServerId() {
return serverId;
}
- public void setServerId(String value)
- {
+ public void setServerId(String value) {
serverId = value;
}
- public String getClientType()
- {
+ public String getClientType() {
return clientType;
}
- public void setClientType(String type)
- {
+ public void setClientType(String type) {
this.clientType = type;
}
- public boolean getServerOnly()
- {
+ public boolean getServerOnly() {
return serverOnly;
}
- public void setServerOnly(boolean serverOnly)
- {
+ public void setServerOnly(boolean serverOnly) {
this.serverOnly = serverOnly;
}
- String getSourceFile()
- {
+ String getSourceFile() {
return sourceFile;
}
- void setSourceFile(String sourceFile)
- {
+ void setSourceFile(String sourceFile) {
this.sourceFile = sourceFile;
}
@@ -113,50 +99,42 @@ public class ChannelSettings extends PropertiesSettings
* @return the port number for this channel
* or 0 if channel url does not contain a port number
*/
- public int getPort()
- {
+ public int getPort() {
return port;
}
- public String getUri()
- {
+ public String getUri() {
return uri;
}
- public void setUri(String uri)
- {
+ public void setUri(String uri) {
this.uri = uri;
port = parsePort(uri);
- port = (port == -1)? 0 : port; // Replace -1 with 0.
+ port = (port == -1) ? 0 : port; // Replace -1 with 0.
contextParsed = false;
clientContextParsed = false;
}
- public String getClientParsedUri(String contextPath)
- {
+ public String getClientParsedUri(String contextPath) {
if (!clientContextParsed)
parseClientUri(this, contextPath);
return parsedClientUri;
}
- public String getEndpointType()
- {
+ public String getEndpointType() {
return endpointType;
}
- public void setEndpointType(String type)
- {
+ public void setEndpointType(String type) {
this.endpointType = type;
}
- public SecurityConstraint getConstraint()
- {
+ public SecurityConstraint getConstraint() {
return constraint;
}
- public void setConstraint(SecurityConstraint constraint)
- {
+ public void setConstraint(SecurityConstraint constraint) {
this.constraint = constraint;
}
@@ -164,17 +142,14 @@ public class ChannelSettings extends PropertiesSettings
* In this client version of the URI parser we're just looking to
* replace the context root tokens.
*/
- private static void parseClientUri(ChannelSettings cs, String contextPath)
- {
- if (!cs.clientContextParsed)
- {
+ private static void parseClientUri(ChannelSettings cs, String contextPath) {
+ if (!cs.clientContextParsed) {
String channelEndpoint = cs.getUri().trim();
// either {context-root} or {context.root} is legal
channelEndpoint = StringUtils.substitute(channelEndpoint, "{context-root}", ConfigurationConstants.CONTEXT_PATH_TOKEN);
- if ((contextPath == null) && (channelEndpoint.indexOf(ConfigurationConstants.CONTEXT_PATH_TOKEN) != -1))
- {
+ if ((contextPath == null) && (channelEndpoint.indexOf(ConfigurationConstants.CONTEXT_PATH_TOKEN) != -1)) {
// context root must be specified before it is used
ConfigurationException e = new ConfigurationException();
e.setMessage(ConfigurationConstants.UNDEFINED_CONTEXT_ROOT, new Object[]{cs.getId()});
@@ -183,15 +158,13 @@ public class ChannelSettings extends PropertiesSettings
// simplify the number of combinations to test by ensuring our
// context path always starts with a slash
- if (contextPath != null && !contextPath.startsWith("/"))
- {
+ if (contextPath != null && !contextPath.startsWith("/")) {
contextPath = "/" + contextPath;
}
// avoid double-slashes from context root by replacing /{context.root}
// in a single replacement step
- if (channelEndpoint.indexOf(ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN) != -1)
- {
+ if (channelEndpoint.indexOf(ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN) != -1) {
// but avoid double-slash for /{context.root}/etc when we have
// the default context root
if ("/".equals(contextPath) && !ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN.equals(channelEndpoint))
@@ -200,8 +173,7 @@ public class ChannelSettings extends PropertiesSettings
channelEndpoint = StringUtils.substitute(channelEndpoint, ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN, contextPath);
}
// otherwise we have something like {server.name}:{server.port}{context.root}...
- else
- {
+ else {
// but avoid double-slash for {context.root}/etc when we have
// the default context root
if ("/".equals(contextPath) && !ConfigurationConstants.CONTEXT_PATH_TOKEN.equals(channelEndpoint))
@@ -214,25 +186,24 @@ public class ChannelSettings extends PropertiesSettings
cs.clientContextParsed = true;
}
}
-
+
/**
* Returns the host name in the URL, or an empty <tt>String</tt> if the URL does not contain a host name.
- *
+ *
* @param url The URL to parse for a host name.
* @return The host name or an empty <tt>String</tt> if the URL does not contain a host name.
*/
// The reason for this method, rather than just using java.net.URL, is that the Java class
// doesn't recognize many of our protocol types/schemes (e.g. rtmp, amfsocket, etc.)
- public static String parseHost(String url)
- {
+ public static String parseHost(String url) {
int start = url.indexOf(":/");
if (start == -1)
return "";
-
+
start = start + 3; // Advance past all of '://' to beginning of host name.
int end = url.indexOf('/', start);
String hostnameWithPort = end == -1 ? url.substring(start) : url.substring(start, end);
-
+
// IPv6 hostnames may contain ':' but the full value is wrapped in [] - skip past if necessary.
int delim = hostnameWithPort.indexOf(']');
delim = (delim != -1) ? hostnameWithPort.indexOf(':', delim) : hostnameWithPort.indexOf(':');
@@ -241,20 +212,19 @@ public class ChannelSettings extends PropertiesSettings
else
return hostnameWithPort.substring(0, delim);
}
-
+
/**
* Returns the port number specified in the URL, or 0 if the URL
* does not contain a port number, or -1 if the URL contains a server.port
* token.
*
* @param url The URL to parse for a contained port number.
- * @return the port number in the URL, or 0 if the URL does not
+ * @return the port number in the URL, or 0 if the URL does not
* contain a port number, or -1 if the URL contains a server.port token.
*/
// The reason for this method, rather than just using java.net.URL, is that the Java class
// doesn't recognize many of our protocol types/schemes (e.g. rtmp, amfsocket, etc.)
- public static int parsePort(String url)
- {
+ public static int parsePort(String url) {
// rtmp://localhost:2035/foo/bar
// Find first slash with colon
int start = url.indexOf(":/");
@@ -270,18 +240,15 @@ public class ChannelSettings extends PropertiesSettings
// If IPv6 is in use, start looking after the square bracket.
int delim = snp.indexOf(']');
- delim = (delim > -1)? snp.indexOf(':', delim) : snp.indexOf(':');
+ delim = (delim > -1) ? snp.indexOf(':', delim) : snp.indexOf(':');
if (delim == -1)
return 0;
int port = 0;
- try
- {
+ try {
int p = Integer.parseInt(snp.substring(delim + 1));
- port = (p > 0)? p : 0;
- }
- catch (Throwable t)
- {
+ port = (p > 0) ? p : 0;
+ } catch (Throwable t) {
port = -1; // To denote that the url contained server.port token.
}
return port;
@@ -295,8 +262,7 @@ public class ChannelSettings extends PropertiesSettings
* @param url Original url.
* @return Url with protocol, host, port and context-root removed.
*/
- public static String removeTokens(String url)
- {
+ public static String removeTokens(String url) {
String channelEndpoint = url.toLowerCase().trim();
// remove protocol and host info
@@ -307,7 +273,7 @@ public class ChannelSettings extends PropertiesSettings
int nextSlash = channelEndpoint.indexOf('/', 8);
// Check to see if there is a 'next slash', and also that the next
// slash isn't the last character
- if ((nextSlash > 0) && (nextSlash != channelEndpoint.length()-1))
+ if ((nextSlash > 0) && (nextSlash != channelEndpoint.length() - 1))
channelEndpoint = channelEndpoint.substring(nextSlash);
}
@@ -315,18 +281,14 @@ public class ChannelSettings extends PropertiesSettings
channelEndpoint = StringUtils.substitute(channelEndpoint, "{context-root}", ConfigurationConstants.CONTEXT_PATH_TOKEN);
// Remove context path info
- if (channelEndpoint.startsWith(ConfigurationConstants.CONTEXT_PATH_TOKEN))
- {
+ if (channelEndpoint.startsWith(ConfigurationConstants.CONTEXT_PATH_TOKEN)) {
channelEndpoint = channelEndpoint.substring(ConfigurationConstants.CONTEXT_PATH_TOKEN.length());
- }
- else if (channelEndpoint.startsWith(ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN))
- {
+ } else if (channelEndpoint.startsWith(ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN)) {
channelEndpoint = channelEndpoint.substring(ConfigurationConstants.SLASH_CONTEXT_PATH_TOKEN.length());
}
// We also don't match on trailing slashes
- if (channelEndpoint.endsWith("/"))
- {
+ if (channelEndpoint.endsWith("/")) {
channelEndpoint = channelEndpoint.substring(0, channelEndpoint.length() - 1);
}
return channelEndpoint;
diff --git a/common/src/main/java/flex/messaging/config/ClientConfiguration.java b/common/src/main/java/flex/messaging/config/ClientConfiguration.java
index df6f03f..f1a22a3 100644
--- a/common/src/main/java/flex/messaging/config/ClientConfiguration.java
+++ b/common/src/main/java/flex/messaging/config/ClientConfiguration.java
@@ -26,8 +26,7 @@ import java.util.Map;
/**
*
*/
-public class ClientConfiguration implements ServicesConfiguration
-{
+public class ClientConfiguration implements ServicesConfiguration {
protected final Map channelSettings;
protected final List defaultChannels;
protected final List serviceSettings;
@@ -36,8 +35,7 @@ public class ClientConfiguration implements ServicesConfiguration
protected final Map clusterSettings;
protected FlexClientSettings flexClientSettings;
- public ClientConfiguration()
- {
+ public ClientConfiguration() {
channelSettings = new HashMap();
defaultChannels = new ArrayList(4);
clusterSettings = new HashMap();
@@ -49,31 +47,26 @@ public class ClientConfiguration implements ServicesConfiguration
* CHANNEL CONFIGURATION
*/
- public void addChannelSettings(String id, ChannelSettings settings)
- {
+ public void addChannelSettings(String id, ChannelSettings settings) {
channelSettings.put(id, settings);
}
- public ChannelSettings getChannelSettings(String ref)
- {
- return (ChannelSettings)channelSettings.get(ref);
+ public ChannelSettings getChannelSettings(String ref) {
+ return (ChannelSettings) channelSettings.get(ref);
}
- public Map getAllChannelSettings()
- {
+ public Map getAllChannelSettings() {
return channelSettings;
}
/*
* DEFAULT CHANNELS CONFIGURATION
*/
- public void addDefaultChannel(String id)
- {
+ public void addDefaultChannel(String id) {
defaultChannels.add(id);
}
- public List getDefaultChannels()
- {
+ public List getDefaultChannels() {
return defaultChannels;
}
@@ -81,15 +74,12 @@ public class ClientConfiguration implements ServicesConfiguration
* SERVICE CONFIGURATION
*/
- public void addServiceSettings(ServiceSettings settings)
- {
+ public void addServiceSettings(ServiceSettings settings) {
serviceSettings.add(settings);
}
- public ServiceSettings getServiceSettings(String serviceType)
- {
- for (Iterator iter = serviceSettings.iterator(); iter.hasNext();)
- {
+ public ServiceSettings getServiceSettings(String serviceType) {
+ for (Iterator iter = serviceSettings.iterator(); iter.hasNext(); ) {
ServiceSettings serviceSettings = (ServiceSettings) iter.next();
if (serviceSettings.getId().equals(serviceType))
return serviceSettings;
@@ -97,8 +87,7 @@ public class ClientConfiguration implements ServicesConfiguration
return null;
}
- public List getAllServiceSettings()
- {
+ public List getAllServiceSettings() {
return serviceSettings;
}
@@ -106,35 +95,28 @@ public class ClientConfiguration implements ServicesConfiguration
* CLUSTER CONFIGURATION
*/
- public void addClusterSettings(ClusterSettings settings)
- {
- if (settings.isDefault())
- {
- for (Iterator it = clusterSettings.values().iterator(); it.hasNext(); )
- {
+ public void addClusterSettings(ClusterSettings settings) {
+ if (settings.isDefault()) {
+ for (Iterator it = clusterSettings.values().iterator(); it.hasNext(); ) {
ClusterSettings cs = (ClusterSettings) it.next();
- if (cs.isDefault())
- {
+ if (cs.isDefault()) {
ConfigurationException cx = new ConfigurationException();
- cx.setMessage(10214, new Object[] { settings.getClusterName(), cs.getClusterName() });
+ cx.setMessage(10214, new Object[]{settings.getClusterName(), cs.getClusterName()});
throw cx;
}
}
}
- if (clusterSettings.containsKey(settings.getClusterName()))
- {
+ if (clusterSettings.containsKey(settings.getClusterName())) {
ConfigurationException cx = new ConfigurationException();
- cx.setMessage(10206, new Object[] { settings.getClusterName() });
+ cx.setMessage(10206, new Object[]{settings.getClusterName()});
throw cx;
}
clusterSettings.put(settings.getClusterName(), settings);
}
- public ClusterSettings getClusterSettings(String clusterId)
- {
- for (Iterator it = clusterSettings.values().iterator(); it.hasNext(); )
- {
+ public ClusterSettings getClusterSettings(String clusterId) {
+ for (Iterator it = clusterSettings.values().iterator(); it.hasNext(); ) {
ClusterSettings cs = (ClusterSettings) it.next();
if (cs.getClusterName() == null && clusterId == null)
return cs; // handle null case
@@ -144,10 +126,8 @@ public class ClientConfiguration implements ServicesConfiguration
return null;
}
- public ClusterSettings getDefaultCluster()
- {
- for (Iterator it = clusterSettings.values().iterator(); it.hasNext(); )
- {
+ public ClusterSettings getDefaultCluster() {
+ for (Iterator it = clusterSettings.values().iterator(); it.hasNext(); ) {
ClusterSettings cs = (ClusterSettings) it.next();
if (cs.isDefault())
return cs;
@@ -158,34 +138,28 @@ public class ClientConfiguration implements ServicesConfiguration
/*
* LOGGING CONFIGURATION
*/
- public void setLoggingSettings(LoggingSettings settings)
- {
+ public void setLoggingSettings(LoggingSettings settings) {
loggingSettings = settings;
}
- public LoggingSettings getLoggingSettings()
- {
+ public LoggingSettings getLoggingSettings() {
return loggingSettings;
}
- public void addConfigPath(String path, long modified)
- {
+ public void addConfigPath(String path, long modified) {
configPaths.put(path, new Long(modified));
}
- public Map getConfigPaths()
- {
+ public Map getConfigPaths() {
return configPaths;
}
-
- public void setFlexClientSettings(FlexClientSettings value)
- {
+
+ public void setFlexClientSettings(FlexClientSettings value) {
flexClientSettings = value;
}
-
- public FlexClientSettings getFlexClientSettings()
- {
+
+ public FlexClientSettings getFlexClientSettings() {
return flexClientSettings;
}
diff --git a/common/src/main/java/flex/messaging/config/ClientConfigurationParser.java b/common/src/main/java/flex/messaging/config/ClientConfigurationParser.java
index cff5d47..1272dba 100644
--- a/common/src/main/java/flex/messaging/config/ClientConfigurationParser.java
+++ b/common/src/main/java/flex/messaging/config/ClientConfigurationParser.java
@@ -31,17 +31,12 @@ import org.w3c.dom.NodeList;
* parser for JDK 1.4. Only a small subset of the configuration is
* processed to generate the information that the client needs at runtime,
* such as channel definitions and service destination properties.
- *
- *
*/
-public abstract class ClientConfigurationParser extends AbstractConfigurationParser
-{
- protected void parseTopLevelConfig(Document doc)
- {
+public abstract class ClientConfigurationParser extends AbstractConfigurationParser {
+ protected void parseTopLevelConfig(Document doc) {
Node root = selectSingleNode(doc, "/" + SERVICES_CONFIG_ELEMENT);
- if (root != null)
- {
+ if (root != null) {
// Validation
allowedChildElements(root, SERVICES_CONFIG_CHILDREN);
@@ -59,41 +54,34 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void channelsSection(Node root)
- {
+ private void channelsSection(Node root) {
Node channelsNode = selectSingleNode(root, CHANNELS_ELEMENT);
- if (channelsNode != null)
- {
+ if (channelsNode != null) {
// Validation
allowedAttributesOrElements(channelsNode, CHANNELS_CHILDREN);
NodeList channels = selectNodeList(channelsNode, CHANNEL_DEFINITION_ELEMENT);
- for (int i = 0; i < channels.getLength(); i++)
- {
+ for (int i = 0; i < channels.getLength(); i++) {
Node channel = channels.item(i);
channelDefinition(channel);
}
NodeList includes = selectNodeList(channelsNode, CHANNEL_INCLUDE_ELEMENT);
- for (int i = 0; i < includes.getLength(); i++)
- {
+ for (int i = 0; i < includes.getLength(); i++) {
Node include = includes.item(i);
channelInclude(include);
}
}
}
- private void channelDefinition(Node channel)
- {
+ private void channelDefinition(Node channel) {
// Validation
requiredAttributesOrElements(channel, CHANNEL_DEFINITION_REQ_CHILDREN);
allowedAttributesOrElements(channel, CHANNEL_DEFINITION_CHILDREN);
String id = getAttributeOrChildElement(channel, ID_ATTR).trim();
- if (isValidID(id))
- {
+ if (isValidID(id)) {
// Don't allow multiple channels with the same id
- if (config.getChannelSettings(id) != null)
- {
+ if (config.getChannelSettings(id) != null) {
// Cannot have multiple channels with the same id ''{0}''.
ConfigurationException e = new ConfigurationException();
e.setMessage(DUPLICATE_CHANNEL_ERROR, new Object[]{id});
@@ -104,8 +92,7 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
// Endpoint
Node endpoint = selectSingleNode(channel, ENDPOINT_ELEMENT);
- if (endpoint != null)
- {
+ if (endpoint != null) {
// Endpoint Validation
allowedAttributesOrElements(endpoint, ENDPOINT_CHILDREN);
@@ -137,25 +124,20 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
// enable-small-messages.
NodeList properties = selectNodeList(channel, PROPERTIES_ELEMENT + "/" + SERIALIZATION_ELEMENT);
- if (properties.getLength() > 0)
- {
+ if (properties.getLength() > 0) {
ConfigMap map = properties(properties, getSourceFileOf(channel));
ConfigMap serialization = map.getPropertyAsMap(SERIALIZATION_ELEMENT, null);
- if (serialization != null)
- {
+ if (serialization != null) {
// enable-small-messages.
String enableSmallMessages = serialization.getProperty(ENABLE_SMALL_MESSAGES_ELEMENT);
- if (enableSmallMessages != null)
- {
+ if (enableSmallMessages != null) {
ConfigMap clientMap = new ConfigMap();
clientMap.addProperty(ENABLE_SMALL_MESSAGES_ELEMENT, enableSmallMessages);
channelSettings.addProperty(SERIALIZATION_ELEMENT, clientMap);
}
}
}
- }
- else
- {
+ } else {
// Invalid {CHANNEL_DEFINITION_ELEMENT} id '{id}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_ID, new Object[]{CHANNEL_DEFINITION_ELEMENT, id});
@@ -165,10 +147,9 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void channelServerOnlyAttribute(Node channel, ChannelSettings channelSettings)
- {
+ private void channelServerOnlyAttribute(Node channel, ChannelSettings channelSettings) {
String clientType = getAttributeOrChildElement(channel, CLASS_ATTR);
- clientType = clientType.length() > 0? clientType : null;
+ clientType = clientType.length() > 0 ? clientType : null;
String serverOnlyString = getAttributeOrChildElement(channel, SERVER_ONLY_ATTR);
boolean serverOnly = serverOnlyString.length() > 0 && Boolean.valueOf(serverOnlyString).booleanValue();
@@ -177,23 +158,20 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
{
String url = channelSettings.getUri();
boolean serverOnlyProtocol = (url.startsWith("samfsocket") || url.startsWith("amfsocket") || url.startsWith("ws"));
- if (!serverOnlyProtocol)
- {
+ if (!serverOnlyProtocol) {
// Endpoint ''{0}'' needs to have either class or server-only attribute defined.
ConfigurationException ce = new ConfigurationException();
ce.setMessage(CLASS_OR_SERVER_ONLY_ERROR, new Object[]{channelSettings.getId()});
throw ce;
}
channelSettings.setServerOnly(true);
- }
- else if (clientType != null && serverOnly) // Both set.
+ } else if (clientType != null && serverOnly) // Both set.
{
// Endpoint ''{0}'' cannot have both class and server-only attribute defined.
ConfigurationException ce = new ConfigurationException();
ce.setMessage(CLASS_AND_SERVER_ONLY_ERROR, new Object[]{channelSettings.getId()});
throw ce;
- }
- else // One of them set.
+ } else // One of them set.
{
if (serverOnly)
channelSettings.setServerOnly(true);
@@ -202,17 +180,13 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void addProperty(Node channel, ChannelSettings channelSettings, String property)
- {
+ private void addProperty(Node channel, ChannelSettings channelSettings, String property) {
NodeList properties = selectNodeList(channel, PROPERTIES_ELEMENT + "/" + property);
- if (properties.getLength() > 0)
- {
+ if (properties.getLength() > 0) {
ConfigMap map = properties(properties, getSourceFileOf(channel));
- if (CLIENT_LOAD_BALANCING_ELEMENT.equals(property))
- {
+ if (CLIENT_LOAD_BALANCING_ELEMENT.equals(property)) {
ConfigMap clientLoadBalancingMap = map.getPropertyAsMap(CLIENT_LOAD_BALANCING_ELEMENT, null);
- if (clientLoadBalancingMap == null)
- {
+ if (clientLoadBalancingMap == null) {
// Invalid {0} configuration for endpoint ''{1}''; no urls defined.
ConfigurationException ce = new ConfigurationException();
ce.setMessage(ERR_MSG_EMPTY_CLIENT_LOAD_BALANCING_ELEMENT, new Object[]{CLIENT_LOAD_BALANCING_ELEMENT, channelSettings.getId()});
@@ -226,10 +200,8 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
// Add client load balancing urls after necessary validation checks.
- private void addClientLoadBalancingUrls(List urls, String endpointId)
- {
- if (urls == null || urls.isEmpty())
- {
+ private void addClientLoadBalancingUrls(List urls, String endpointId) {
+ if (urls == null || urls.isEmpty()) {
// Invalid {0} configuration for endpoint ''{1}''; no urls defined.
ConfigurationException ce = new ConfigurationException();
ce.setMessage(ERR_MSG_EMPTY_CLIENT_LOAD_BALANCING_ELEMENT, new Object[]{CLIENT_LOAD_BALANCING_ELEMENT, endpointId});
@@ -237,21 +209,18 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
Set clientLoadBalancingUrls = new HashSet();
- for (Iterator iterator = urls.iterator(); iterator.hasNext();)
- {
+ for (Iterator iterator = urls.iterator(); iterator.hasNext(); ) {
String url = (String) iterator.next();
- if (url == null || url.length() == 0)
- {
+ if (url == null || url.length() == 0) {
// Invalid {0} configuration for endpoint ''{1}''; cannot add empty url.
- ConfigurationException ce = new ConfigurationException();
+ ConfigurationException ce = new ConfigurationException();
ce.setMessage(ERR_MSG_EMTPY_CLIENT_LOAD_BALACNING_URL, new Object[]{CLIENT_LOAD_BALANCING_ELEMENT, endpointId});
throw ce;
}
- if (TokenReplacer.containsTokens(url))
- {
+ if (TokenReplacer.containsTokens(url)) {
// Invalid {0} configuration for endpoint ''{1}''; cannot add url with tokens.
- ConfigurationException ce = new ConfigurationException();
+ ConfigurationException ce = new ConfigurationException();
ce.setMessage(ERR_MSG_CLIENT_LOAD_BALANCING_URL_WITH_TOKEN, new Object[]{CLIENT_LOAD_BALANCING_ELEMENT, endpointId});
throw ce;
}
@@ -264,23 +233,17 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
- private void channelInclude(Node channelInclude)
- {
+ private void channelInclude(Node channelInclude) {
// Validation
allowedAttributesOrElements(channelInclude, CHANNEL_INCLUDE_CHILDREN);
String src = getAttributeOrChildElement(channelInclude, SRC_ATTR);
String dir = getAttributeOrChildElement(channelInclude, DIRECTORY_ATTR);
- if (src.length() > 0)
- {
+ if (src.length() > 0) {
channelIncludeFile(src);
- }
- else if (dir.length() > 0)
- {
+ } else if (dir.length() > 0) {
channelIncludeDirectory(dir);
- }
- else
- {
+ } else {
// The include element ''{0}'' must specify either the ''{1}'' or ''{2}'' attribute.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(MISSING_INCLUDE_ATTRIBUTES, new Object[]{channelInclude.getNodeName(), SRC_ATTR, DIRECTORY_ATTR});
@@ -288,40 +251,32 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void channelIncludeFile(String src)
- {
+ private void channelIncludeFile(String src) {
Document doc = loadDocument(src, fileResolver.getIncludedFile(src));
- if (fileResolver instanceof LocalFileResolver)
- {
- LocalFileResolver local = (LocalFileResolver)fileResolver;
- ((ClientConfiguration)config).addConfigPath(local.getIncludedPath(src), local.getIncludedLastModified(src));
+ if (fileResolver instanceof LocalFileResolver) {
+ LocalFileResolver local = (LocalFileResolver) fileResolver;
+ ((ClientConfiguration) config).addConfigPath(local.getIncludedPath(src), local.getIncludedLastModified(src));
}
doc.getDocumentElement().normalize();
// Check for multiple channels in a single file.
Node channelsNode = selectSingleNode(doc, CHANNELS_ELEMENT);
- if (channelsNode != null)
- {
+ if (channelsNode != null) {
allowedChildElements(channelsNode, CHANNELS_CHILDREN);
NodeList channels = selectNodeList(channelsNode, CHANNEL_DEFINITION_ELEMENT);
- for (int a = 0; a < channels.getLength(); a++)
- {
+ for (int a = 0; a < channels.getLength(); a++) {
Node service = channels.item(a);
channelDefinition(service);
}
fileResolver.popIncludedFile();
- }
- else // Check for single channel in the file.
+ } else // Check for single channel in the file.
{
Node channel = selectSingleNode(doc, "/" + CHANNEL_DEFINITION_ELEMENT);
- if (channel != null)
- {
+ if (channel != null) {
channelDefinition(channel);
fileResolver.popIncludedFile();
- }
- else
- {
+ } else {
// The {0} root element in file {1} must be '{CHANNELS_ELEMENT}' or '{CHANNEL_ELEMENT}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{CHANNEL_INCLUDE_ELEMENT, src, CHANNELS_ELEMENT, CHANNEL_DEFINITION_ELEMENT});
@@ -330,122 +285,100 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void channelIncludeDirectory(String dir)
- {
+ private void channelIncludeDirectory(String dir) {
List files = fileResolver.getFiles(dir);
- for (int i = 0; i < files.size(); i++)
- {
+ for (int i = 0; i < files.size(); i++) {
String src = (String) files.get(i);
channelIncludeFile(src);
}
}
- private void services(Node root)
- {
+ private void services(Node root) {
Node servicesNode = selectSingleNode(root, SERVICES_ELEMENT);
- if (servicesNode != null)
- {
+ if (servicesNode != null) {
// Validation
allowedChildElements(servicesNode, SERVICES_CHILDREN);
// Default Channels for the application
Node defaultChannels = selectSingleNode(servicesNode, DEFAULT_CHANNELS_ELEMENT);
- if (defaultChannels != null)
- {
+ if (defaultChannels != null) {
allowedChildElements(defaultChannels, DEFAULT_CHANNELS_CHILDREN);
NodeList channels = selectNodeList(defaultChannels, CHANNEL_ELEMENT);
- for (int c = 0; c < channels.getLength(); c++)
- {
+ for (int c = 0; c < channels.getLength(); c++) {
Node chan = channels.item(c);
- allowedAttributes(chan, new String[] {REF_ATTR});
+ allowedAttributes(chan, new String[]{REF_ATTR});
defaultChannel(chan);
}
}
// Service Includes
NodeList services = selectNodeList(servicesNode, SERVICE_INCLUDE_ELEMENT);
- for (int i = 0; i < services.getLength(); i++)
- {
+ for (int i = 0; i < services.getLength(); i++) {
Node service = services.item(i);
serviceInclude(service);
}
// Service
services = selectNodeList(servicesNode, SERVICE_ELEMENT);
- for (int i = 0; i < services.getLength(); i++)
- {
+ for (int i = 0; i < services.getLength(); i++) {
Node service = services.item(i);
service(service);
}
}
}
- private void clusters(Node root)
- {
+ private void clusters(Node root) {
Node clusteringNode = selectSingleNode(root, CLUSTERS_ELEMENT);
- if (clusteringNode != null)
- {
+ if (clusteringNode != null) {
allowedAttributesOrElements(clusteringNode, CLUSTERING_CHILDREN);
NodeList clusters = selectNodeList(clusteringNode, CLUSTER_DEFINITION_ELEMENT);
- for (int i = 0; i < clusters.getLength(); i++)
- {
+ for (int i = 0; i < clusters.getLength(); i++) {
Node cluster = clusters.item(i);
requiredAttributesOrElements(cluster, CLUSTER_DEFINITION_CHILDREN);
String clusterName = getAttributeOrChildElement(cluster, ID_ATTR);
- if (isValidID(clusterName))
- {
+ if (isValidID(clusterName)) {
String propsFileName = getAttributeOrChildElement(cluster, CLUSTER_PROPERTIES_ATTR);
ClusterSettings clusterSettings = new ClusterSettings();
clusterSettings.setClusterName(clusterName);
clusterSettings.setPropsFileName(propsFileName);
String defaultValue = getAttributeOrChildElement(cluster, ClusterSettings.DEFAULT_ELEMENT);
- if (defaultValue != null && defaultValue.length() > 0)
- {
+ if (defaultValue != null && defaultValue.length() > 0) {
if (defaultValue.equalsIgnoreCase("true"))
clusterSettings.setDefault(true);
- else if (!defaultValue.equalsIgnoreCase("false"))
- {
+ else if (!defaultValue.equalsIgnoreCase("false")) {
ConfigurationException e = new ConfigurationException();
- e.setMessage(10215, new Object[] {clusterName, defaultValue});
+ e.setMessage(10215, new Object[]{clusterName, defaultValue});
throw e;
}
}
String ulb = getAttributeOrChildElement(cluster, ClusterSettings.URL_LOAD_BALANCING);
- if (ulb != null && ulb.length() > 0)
- {
+ if (ulb != null && ulb.length() > 0) {
if (ulb.equalsIgnoreCase("false"))
clusterSettings.setURLLoadBalancing(false);
- else if (!ulb.equalsIgnoreCase("true"))
- {
+ else if (!ulb.equalsIgnoreCase("true")) {
ConfigurationException e = new ConfigurationException();
- e.setMessage(10216, new Object[] {clusterName, ulb});
+ e.setMessage(10216, new Object[]{clusterName, ulb});
throw e;
}
}
- ((ClientConfiguration)config).addClusterSettings(clusterSettings);
+ ((ClientConfiguration) config).addClusterSettings(clusterSettings);
}
}
}
}
- private void serviceInclude(Node serviceInclude)
- {
+ private void serviceInclude(Node serviceInclude) {
// Validation
allowedAttributesOrElements(serviceInclude, SERVICE_INCLUDE_CHILDREN);
String src = getAttributeOrChildElement(serviceInclude, SRC_ATTR);
String dir = getAttributeOrChildElement(serviceInclude, DIRECTORY_ATTR);
- if (src.length() > 0)
- {
+ if (src.length() > 0) {
serviceIncludeFile(src);
- }
- else if (dir.length() > 0)
- {
+ } else if (dir.length() > 0) {
serviceIncludeDirectory(dir);
- }
- else
- {
+ } else {
// The include element ''{0}'' must specify either the ''{1}'' or ''{2}'' attribute.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(MISSING_INCLUDE_ATTRIBUTES, new Object[]{serviceInclude.getNodeName(), SRC_ATTR, DIRECTORY_ATTR});
@@ -453,40 +386,32 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void serviceIncludeFile(String src)
- {
+ private void serviceIncludeFile(String src) {
Document doc = loadDocument(src, fileResolver.getIncludedFile(src));
- if (fileResolver instanceof LocalFileResolver)
- {
- LocalFileResolver local = (LocalFileResolver)fileResolver;
- ((ClientConfiguration)config).addConfigPath(local.getIncludedPath(src), local.getIncludedLastModified(src));
+ if (fileResolver instanceof LocalFileResolver) {
+ LocalFileResolver local = (LocalFileResolver) fileResolver;
+ ((ClientConfiguration) config).addConfigPath(local.getIncludedPath(src), local.getIncludedLastModified(src));
}
doc.getDocumentElement().normalize();
// Check for multiple services defined in file.
Node servicesNode = selectSingleNode(doc, SERVICES_ELEMENT);
- if (servicesNode != null)
- {
+ if (servicesNode != null) {
allowedChildElements(servicesNode, SERVICES_CHILDREN);
NodeList services = selectNodeList(servicesNode, SERVICES_ELEMENT);
- for (int a = 0; a < services.getLength(); a++)
- {
+ for (int a = 0; a < services.getLength(); a++) {
Node service = services.item(a);
service(service);
}
fileResolver.popIncludedFile();
- }
- else // Check for single service in file.
+ } else // Check for single service in file.
{
Node service = selectSingleNode(doc, "/" + SERVICE_ELEMENT);
- if (service != null)
- {
+ if (service != null) {
service(service);
fileResolver.popIncludedFile();
- }
- else
- {
+ } else {
// The {0} root element in file {1} must be ''{2}'' or ''{3}''.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{SERVICE_INCLUDE_ELEMENT, src, SERVICES_ELEMENT, SERVICE_ELEMENT});
@@ -495,40 +420,32 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void serviceIncludeDirectory(String dir)
- {
+ private void serviceIncludeDirectory(String dir) {
List files = fileResolver.getFiles(dir);
- for (int i = 0; i < files.size(); i++)
- {
+ for (int i = 0; i < files.size(); i++) {
String src = (String) files.get(i);
serviceIncludeFile(src);
}
}
- private void service(Node service)
- {
+ private void service(Node service) {
// Validation
requiredAttributesOrElements(service, SERVICE_REQ_CHILDREN);
allowedAttributesOrElements(service, SERVICE_CHILDREN);
String id = getAttributeOrChildElement(service, ID_ATTR);
- if (isValidID(id))
- {
+ if (isValidID(id)) {
ServiceSettings serviceSettings = config.getServiceSettings(id);
- if (serviceSettings == null)
- {
+ if (serviceSettings == null) {
serviceSettings = new ServiceSettings(id);
// Service Properties
NodeList properties = selectNodeList(service, PROPERTIES_ELEMENT + "/*");
- if (properties.getLength() > 0)
- {
+ if (properties.getLength() > 0) {
ConfigMap map = properties(properties, getSourceFileOf(service));
serviceSettings.addProperties(map);
}
config.addServiceSettings(serviceSettings);
- }
- else
- {
+ } else {
// Duplicate service definition '{0}'.
ConfigurationException e = new ConfigurationException();
e.setMessage(DUPLICATE_SERVICE_ERROR, new Object[]{id});
@@ -537,12 +454,9 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
// Service Class Name
String className = getAttributeOrChildElement(service, CLASS_ATTR);
- if (className.length() > 0)
- {
+ if (className.length() > 0) {
serviceSettings.setClassName(className);
- }
- else
- {
+ } else {
// Class not specified for {SERVICE_ELEMENT} '{id}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(CLASS_NOT_SPECIFIED, new Object[]{SERVICE_ELEMENT, id});
@@ -553,23 +467,19 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
// Default Channels
Node defaultChannels = selectSingleNode(service, DEFAULT_CHANNELS_ELEMENT);
- if (defaultChannels != null)
- {
+ if (defaultChannels != null) {
allowedChildElements(defaultChannels, DEFAULT_CHANNELS_CHILDREN);
NodeList channels = selectNodeList(defaultChannels, CHANNEL_ELEMENT);
- for (int c = 0; c < channels.getLength(); c++)
- {
+ for (int c = 0; c < channels.getLength(); c++) {
Node chan = channels.item(c);
- allowedAttributes(chan, new String[] {REF_ATTR});
+ allowedAttributes(chan, new String[]{REF_ATTR});
defaultChannel(chan, serviceSettings);
}
}
// Fall back on application's default channels
- else if (config.getDefaultChannels().size() > 0)
- {
- for (Iterator iter = config.getDefaultChannels().iterator(); iter.hasNext();)
- {
- String channelId = (String)iter.next();
+ else if (config.getDefaultChannels().size() > 0) {
+ for (Iterator iter = config.getDefaultChannels().iterator(); iter.hasNext(); ) {
+ String channelId = (String) iter.next();
ChannelSettings channel = config.getChannelSettings(channelId);
serviceSettings.addDefaultChannel(channel);
}
@@ -577,22 +487,18 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
// Destinations
NodeList list = selectNodeList(service, DESTINATION_ELEMENT);
- for (int i = 0; i < list.getLength(); i++)
- {
+ for (int i = 0; i < list.getLength(); i++) {
Node dest = list.item(i);
destination(dest, serviceSettings);
}
// Destination Includes
list = selectNodeList(service, DESTINATION_INCLUDE_ELEMENT);
- for (int i = 0; i < list.getLength(); i++)
- {
+ for (int i = 0; i < list.getLength(); i++) {
Node dest = list.item(i);
destinationInclude(dest, serviceSettings);
}
- }
- else
- {
+ } else {
//Invalid {SERVICE_ELEMENT} id '{id}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_ID, new Object[]{SERVICE_ELEMENT, id});
@@ -608,29 +514,23 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
* ;<channel ref="channel-id" /><br />
* <default-channels>
* </p>
+ *
* @param chan the channel node
*/
- private void defaultChannel(Node chan)
- {
+ private void defaultChannel(Node chan) {
String ref = getAttributeOrChildElement(chan, REF_ATTR);
- if (ref.length() > 0)
- {
+ if (ref.length() > 0) {
ChannelSettings channel = config.getChannelSettings(ref);
- if (channel != null)
- {
+ if (channel != null) {
config.addDefaultChannel(channel.getId());
- }
- else
- {
+ } else {
// {0} not found for reference '{1}'
ConfigurationException e = new ConfigurationException();
e.setMessage(REF_NOT_FOUND, new Object[]{CHANNEL_ELEMENT, ref});
throw e;
}
- }
- else
- {
+ } else {
//A default channel was specified without a reference for service '{0}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_DEFAULT_CHANNEL, new Object[]{"MessageBroker"});
@@ -646,30 +546,24 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
* <channel ref="channel-id" /><br />
* <default-channels>
* </p>
- * @param chan the channel node
+ *
+ * @param chan the channel node
* @param serviceSettings service settings
*/
- private void defaultChannel(Node chan, ServiceSettings serviceSettings)
- {
+ private void defaultChannel(Node chan, ServiceSettings serviceSettings) {
String ref = getAttributeOrChildElement(chan, REF_ATTR).trim();
- if (ref.length() > 0)
- {
+ if (ref.length() > 0) {
ChannelSettings channel = config.getChannelSettings(ref);
- if (channel != null)
- {
+ if (channel != null) {
serviceSettings.addDefaultChannel(channel);
- }
- else
- {
+ } else {
// {0} not found for reference '{1}'
ConfigurationException e = new ConfigurationException();
e.setMessage(REF_NOT_FOUND, new Object[]{CHANNEL_ELEMENT, ref});
throw e;
}
- }
- else
- {
+ } else {
//A default channel was specified without a reference for service '{0}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_DEFAULT_CHANNEL, new Object[]{serviceSettings.getId()});
@@ -677,23 +571,17 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void destinationInclude(Node destInclude, ServiceSettings serviceSettings)
- {
+ private void destinationInclude(Node destInclude, ServiceSettings serviceSettings) {
// Validation
allowedAttributesOrElements(destInclude, DESTINATION_INCLUDE_CHILDREN);
String src = getAttributeOrChildElement(destInclude, SRC_ATTR);
String dir = getAttributeOrChildElement(destInclude, DIRECTORY_ATTR);
- if (src.length() > 0)
- {
+ if (src.length() > 0) {
destinationIncludeFile(serviceSettings, src);
- }
- else if (dir.length() > 0)
- {
+ } else if (dir.length() > 0) {
destinationIncludeDirectory(serviceSettings, dir);
- }
- else
- {
+ } else {
// The include element ''{0}'' must specify either the ''{1}'' or ''{2}'' attribute.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(MISSING_INCLUDE_ATTRIBUTES, new Object[]{destInclude.getNodeName(), SRC_ATTR, DIRECTORY_ATTR});
@@ -701,50 +589,40 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void destinationIncludeDirectory(ServiceSettings serviceSettings, String dir)
- {
+ private void destinationIncludeDirectory(ServiceSettings serviceSettings, String dir) {
List files = fileResolver.getFiles(dir);
- for (int i = 0; i < files.size(); i++)
- {
+ for (int i = 0; i < files.size(); i++) {
String src = (String) files.get(i);
destinationIncludeFile(serviceSettings, src);
}
}
- private void destinationIncludeFile(ServiceSettings serviceSettings, String src)
- {
+ private void destinationIncludeFile(ServiceSettings serviceSettings, String src) {
Document doc = loadDocument(src, fileResolver.getIncludedFile(src));
- if (fileResolver instanceof LocalFileResolver)
- {
- LocalFileResolver local = (LocalFileResolver)fileResolver;
- ((ClientConfiguration)config).addConfigPath(local.getIncludedPath(src), local.getIncludedLastModified(src));
+ if (fileResolver instanceof LocalFileResolver) {
+ LocalFileResolver local = (LocalFileResolver) fileResolver;
+ ((ClientConfiguration) config).addConfigPath(local.getIncludedPath(src), local.getIncludedLastModified(src));
}
doc.getDocumentElement().normalize();
// Check for multiple destination defined in file.
Node destinationsNode = selectSingleNode(doc, DESTINATIONS_ELEMENT);
- if (destinationsNode != null)
- {
+ if (destinationsNode != null) {
allowedChildElements(destinationsNode, DESTINATIONS_CHILDREN);
NodeList destinations = selectNodeList(destinationsNode, DESTINATION_ELEMENT);
- for (int a = 0; a < destinations.getLength(); a++)
- {
+ for (int a = 0; a < destinations.getLength(); a++) {
Node dest = destinations.item(a);
destination(dest, serviceSettings);
}
fileResolver.popIncludedFile();
- }
- else // Check for single destination definition.
+ } else // Check for single destination definition.
{
Node dest = selectSingleNode(doc, "/" + DESTINATION_ELEMENT);
- if (dest != null)
- {
+ if (dest != null) {
destination(dest, serviceSettings);
fileResolver.popIncludedFile();
- }
- else
- {
+ } else {
// The {0} root element in file {1} must be ''{2}'' or ''{3}''.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_INCLUDE_ROOT, new Object[]{DESTINATION_INCLUDE_ELEMENT, src, DESTINATIONS_ELEMENT, DESTINATION_ELEMENT});
@@ -753,8 +631,7 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void destination(Node dest, ServiceSettings serviceSettings)
- {
+ private void destination(Node dest, ServiceSettings serviceSettings) {
// Validation
requiredAttributesOrElements(dest, DESTINATION_REQ_CHILDREN);
allowedAttributes(dest, DESTINATION_ATTR);
@@ -764,11 +641,9 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
DestinationSettings destinationSettings;
String id = getAttributeOrChildElement(dest, ID_ATTR);
- if (isValidID(id))
- {
- destinationSettings = (DestinationSettings)serviceSettings.getDestinationSettings().get(id);
- if (destinationSettings != null)
- {
+ if (isValidID(id)) {
+ destinationSettings = (DestinationSettings) serviceSettings.getDestinationSettings().get(id);
+ if (destinationSettings != null) {
// Duplicate destination definition '{id}' in service '{serviceId}'.
ConfigurationException e = new ConfigurationException();
e.setMessage(DUPLICATE_DESTINATION_ERROR, new Object[]{id, serviceId});
@@ -777,9 +652,7 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
destinationSettings = new DestinationSettings(id);
serviceSettings.addDestinationSettings(destinationSettings);
- }
- else
- {
+ } else {
//Invalid {DESTINATION_ELEMENT} id '{id}' for service '{serviceId}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_ID_IN_SERVICE, new Object[]{DESTINATION_ELEMENT, id, serviceId});
@@ -788,8 +661,7 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
// Destination Properties
NodeList properties = selectNodeList(dest, PROPERTIES_ELEMENT + "/*");
- if (properties.getLength() > 0)
- {
+ if (properties.getLength() > 0) {
ConfigMap map = properties(properties, getSourceFileOf(dest));
destinationSettings.addProperties(map);
}
@@ -799,68 +671,51 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
- private void destinationChannels(Node dest, DestinationSettings destinationSettings, ServiceSettings serviceSettings)
- {
+ private void destinationChannels(Node dest, DestinationSettings destinationSettings, ServiceSettings serviceSettings) {
String destId = destinationSettings.getId();
// Channels attribute
String channelsList = evaluateExpression(dest, "@" + CHANNELS_ATTR).toString().trim();
- if (channelsList.length() > 0)
- {
+ if (channelsList.length() > 0) {
StringTokenizer st = new StringTokenizer(channelsList, LIST_DELIMITERS);
- while (st.hasMoreTokens())
- {
+ while (st.hasMoreTokens()) {
String ref = st.nextToken().trim();
ChannelSettings channel = config.getChannelSettings(ref);
- if (channel != null)
- {
+ if (channel != null) {
destinationSettings.addChannelSettings(channel);
- }
- else
- {
+ } else {
// {CHANNEL_ELEMENT} not found for reference '{ref}' in destination '{destId}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(REF_NOT_FOUND_IN_DEST, new Object[]{CHANNEL_ELEMENT, ref, destId});
throw ex;
}
}
- }
- else
- {
+ } else {
// Channels element
Node channelsNode = selectSingleNode(dest, CHANNELS_ELEMENT);
- if (channelsNode != null)
- {
+ if (channelsNode != null) {
allowedChildElements
- (channelsNode, DESTINATION_CHANNELS_CHILDREN);
+ (channelsNode, DESTINATION_CHANNELS_CHILDREN);
NodeList channels = selectNodeList(channelsNode, CHANNEL_ELEMENT);
- if (channels.getLength() > 0)
- {
- for (int c = 0; c < channels.getLength(); c++)
- {
+ if (channels.getLength() > 0) {
+ for (int c = 0; c < channels.getLength(); c++) {
Node chan = channels.item(c);
// Validation
requiredAttributesOrElements(chan, DESTINATION_CHANNEL_REQ_CHILDREN);
String ref = getAttributeOrChildElement(chan, REF_ATTR).trim();
- if (ref.length() > 0)
- {
+ if (ref.length() > 0) {
ChannelSettings channel = config.getChannelSettings(ref);
- if (channel != null)
- {
+ if (channel != null) {
destinationSettings.addChannelSettings(channel);
- }
- else
- {
+ } else {
// {CHANNEL_ELEMENT} not found for reference '{ref}' in destination '{destId}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(REF_NOT_FOUND_IN_DEST, new Object[]{CHANNEL_ELEMENT, ref, destId});
throw ex;
}
- }
- else
- {
+ } else {
//Invalid {0} ref '{1}' in destination '{2}'.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(INVALID_REF_IN_DEST, new Object[]{CHANNEL_ELEMENT, ref, destId});
@@ -868,22 +723,18 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
}
- }
- else
- {
+ } else {
// Finally, we fall back to the service's default channels
List defaultChannels = serviceSettings.getDefaultChannels();
Iterator it = defaultChannels.iterator();
- while (it.hasNext())
- {
- ChannelSettings channel = (ChannelSettings)it.next();
+ while (it.hasNext()) {
+ ChannelSettings channel = (ChannelSettings) it.next();
destinationSettings.addChannelSettings(channel);
}
}
}
- if (destinationSettings.getChannelSettings().size() <= 0)
- {
+ if (destinationSettings.getChannelSettings().size() <= 0) {
// Destination '{id}' must specify at least one channel.
ConfigurationException ex = new ConfigurationException();
ex.setMessage(DEST_NEEDS_CHANNEL, new Object[]{destId});
@@ -891,61 +742,47 @@ public abstract class ClientConfigurationParser extends AbstractConfigurationPar
}
}
- private void flexClient(Node root)
- {
+ private void flexClient(Node root) {
Node flexClient = selectSingleNode(root, FLEX_CLIENT_ELEMENT);
- if (flexClient != null)
- {
+ if (flexClient != null) {
FlexClientSettings flexClientSettings = new FlexClientSettings();
// Reliable reconnect duration millis
String reliableReconnectDurationMillis = getAttributeOrChildElement(flexClient, FLEX_CLIENT_RELIABLE_RECONNECT_DURATION_MILLIS);
- if (reliableReconnectDurationMillis.length() > 0)
- {
- try
- {
+ if (reliableReconnectDurationMillis.length() > 0) {
+ try {
int millis = Integer.parseInt(reliableReconnectDurationMillis);
- if (millis < 0)
- {
+ if (millis < 0) {
ConfigurationException e = new ConfigurationException();
e.setMessage(INVALID_FLEX_CLIENT_RELIABLE_RECONNECT_DURATION_MILLIS, new Object[]{reliableReconnectDurationMillis});
throw e;
}
flexClientSettings.setReliableReconnectDurationMillis(millis);
- }
- catch (NumberFormatException nfe)
- {
+ } catch (NumberFormatException nfe) {
ConfigurationException e = new ConfigurationException();
e.setMessage(INVALID_FLEX_CLIENT_RELIABLE_RECONNECT_DURATION_MILLIS, new Object[]{reliableReconnectDurationMillis});
throw e;
}
- }
- else
- {
+ } else {
flexClientSettings.setReliableReconnectDurationMillis(0); // Default is 0.
}
// heartbeat interval millis
String heartbeatIntervalMillis = getAttributeOrChildElement(flexClient, FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS);
- if (heartbeatIntervalMillis.length() > 0)
- {
- try
- {
+ if (heartbeatIntervalMillis.length() > 0) {
+ try {
int millis = Integer.parseInt(heartbeatIntervalMillis);
- if (millis < 0)
- {
+ if (millis < 0) {
ConfigurationException e = new ConfigurationException();
- e.setMessage(INVALID_FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS, new Object[] {heartbeatIntervalMillis});
+ e.setMessage(INVALID_FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS, new Object[]{heartbeatIntervalMillis});
throw e;
}
flexClientSettings.setHeartbeatIntervalMillis(millis);
- }
- catch (NumberFormatException nfe)
- {
+ } catch (NumberFormatException nfe) {
ConfigurationException e = new ConfigurationException();
- e.setMessage(INVALID_FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS, new Object[] {heartbeatIntervalMillis});
+ e.setMessage(INVALID_FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS, new Object[]{heartbeatIntervalMillis});
throw e;
}
}
- ((ClientConfiguration)config).setFlexClientSettings(flexClientSettings);
+ ((ClientConfiguration) config).setFlexClientSettings(flexClientSettings);
}
}
}
diff --git a/common/src/main/java/flex/messaging/config/ClusterSettings.java b/common/src/main/java/flex/messaging/config/ClusterSettings.java
index beb64fd..9f317c2 100644
--- a/common/src/main/java/flex/messaging/config/ClusterSettings.java
+++ b/common/src/main/java/flex/messaging/config/ClusterSettings.java
@@ -19,8 +19,7 @@ package flex.messaging.config;
/**
*
*/
-public class ClusterSettings extends PropertiesSettings
-{
+public class ClusterSettings extends PropertiesSettings {
public static final String CLUSTER_ELEMENT = "cluster";
public static final String REF_ATTR = "ref";
public static final String SHARED_BACKEND_ATTR = "shared-backend";
@@ -39,8 +38,7 @@ public class ClusterSettings extends PropertiesSettings
/**
* Creates a new <code>ClusterSettings</code> with default settings.
*/
- public ClusterSettings()
- {
+ public ClusterSettings() {
def = false;
urlLoadBalancing = true;
implementationClass = JGROUPS_CLUSTER;
@@ -51,8 +49,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @return The name of the cluster.
*/
- public String getClusterName()
- {
+ public String getClusterName() {
return clusterName;
}
@@ -61,8 +58,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @param clusterName The name of the cluster.
*/
- public void setClusterName(String clusterName)
- {
+ public void setClusterName(String clusterName) {
this.clusterName = clusterName;
}
@@ -71,8 +67,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @return <code>true</code> is the cluster is default; otherwise <code>false</code>.
*/
- public boolean isDefault()
- {
+ public boolean isDefault() {
return def;
}
@@ -81,8 +76,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @param def <code>true</code> is the cluster is default; otherwise <code>false</code>.
*/
- public void setDefault(boolean def)
- {
+ public void setDefault(boolean def) {
this.def = def;
}
@@ -91,8 +85,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @return The properties file of the cluster.
*/
- public String getPropsFileName()
- {
+ public String getPropsFileName() {
return propsFileName;
}
@@ -101,8 +94,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @param propsFileName The properties file of the cluster.
*/
- public void setPropsFileName(String propsFileName)
- {
+ public void setPropsFileName(String propsFileName) {
this.propsFileName = propsFileName;
}
@@ -111,8 +103,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @return <code>true</code> if the url load balancing is enabled; otherwise <code>false</code>.
*/
- public boolean getURLLoadBalancing()
- {
+ public boolean getURLLoadBalancing() {
return urlLoadBalancing;
}
@@ -121,8 +112,7 @@ public class ClusterSettings extends PropertiesSettings
*
* @param ulb <code>true</code> if the url load balancing is enabled; otherwise <code>false</code>.
*/
- public void setURLLoadBalancing(boolean ulb)
- {
+ public void setURLLoadBalancing(boolean ulb) {
urlLoadBalancing = ulb;
}
@@ -131,10 +121,8 @@ public class ClusterSettings extends PropertiesSettings
* The default is 'flex.messaging.cluster.JGroupsCluster'.
*
* @param className name of the cluster implementation class
- *
*/
- public void setImplementationClass(String className)
- {
+ public void setImplementationClass(String className) {
this.implementationClass = className;
}
@@ -143,10 +131,8 @@ public class ClusterSettings extends PropertiesSettings
* The class must support the flex.messaging.cluster.Cluster interface.
*
* @return The implementation class name.
- *
*/
- public String getImplementationClass()
- {
+ public String getImplementationClass() {
return implementationClass;
}
}
diff --git a/common/src/main/java/flex/messaging/config/ConfigMap.java b/common/src/main/java/flex/messaging/config/ConfigMap.java
index c2bd780..c0d7b6c 100644
--- a/common/src/main/java/flex/messaging/config/ConfigMap.java
+++ b/common/src/main/java/flex/messaging/config/ConfigMap.java
@@ -34,8 +34,7 @@ import java.util.Set;
* for getting properties from the Map, cast to a certain type and allows a
* default to be specified in the event that the property is missing.
*/
-public class ConfigMap extends LinkedHashMap
-{
+public class ConfigMap extends LinkedHashMap {
/**
* This number was generated using the 'serialver' command line tool.
* This number should remain consistent with the version used by
@@ -50,13 +49,13 @@ public class ConfigMap extends LinkedHashMap
/**
* An *undocumented* system property can be used to revert to legacy config property handling:
- * Legacy behavior - config property values were not trimmed, retaining leading/trailing whitespace which
- * proved problematic for customers.
- * New default behavior - config property values are trimmed.
+ * Legacy behavior - config property values were not trimmed, retaining leading/trailing whitespace which
+ * proved problematic for customers.
+ * New default behavior - config property values are trimmed.
*/
- private static final String SYSPROPNAME_TRIM_CONFIG_PROPERTY_VALUES = "flex.trim-config-property-values";
+ private static final String SYSPROPNAME_TRIM_CONFIG_PROPERTY_VALUES = "flex.trim-config-property-values";
private static final boolean TRIM_CONFIG_PROPERTY_VALUES = Boolean.valueOf(System.getProperty(SYSPROPNAME_TRIM_CONFIG_PROPERTY_VALUES, "true")).booleanValue();
-
+
/**
* Map to keep track of accessed properties.
*/
@@ -66,8 +65,7 @@ public class ConfigMap extends LinkedHashMap
* Constructs an empty <code>ConfigMap</code> with the default initial
* capacity of 10.
*/
- public ConfigMap()
- {
+ public ConfigMap() {
super();
}
@@ -75,10 +73,9 @@ public class ConfigMap extends LinkedHashMap
* Constructs a new <code>ConfigMap</code> with the initial
* capacity specified.
*
- * @param initialCapacity the initial capacity.
+ * @param initialCapacity the initial capacity.
*/
- public ConfigMap(int initialCapacity)
- {
+ public ConfigMap(int initialCapacity) {
super(initialCapacity);
}
@@ -87,10 +84,9 @@ public class ConfigMap extends LinkedHashMap
* from the supplied map to this map.
*
* @param m a <code>ConfigMap</code> whose properties are to be added to
- * this <code>ConfigMap</code>.
+ * this <code>ConfigMap</code>.
*/
- public ConfigMap(ConfigMap m)
- {
+ public ConfigMap(ConfigMap m) {
this();
addProperties(m);
}
@@ -99,22 +95,17 @@ public class ConfigMap extends LinkedHashMap
* Adds all properties from a map to this map.
*
* @param p a <code>ConfigMap</code> whose properties are to be added to
- * this <code>ConfigMap</code>.
+ * this <code>ConfigMap</code>.
*/
- public void addProperties(ConfigMap p)
- {
+ public void addProperties(ConfigMap p) {
Iterator it = p.entrySet().iterator();
- while (it.hasNext())
- {
+ while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey();
Object value = entry.getValue();
- if (value instanceof ValueList)
- {
+ if (value instanceof ValueList) {
addProperties(key, (ValueList) value);
- }
- else
- {
+ } else {
addPropertyLogic(key, value);
}
}
@@ -123,18 +114,14 @@ public class ConfigMap extends LinkedHashMap
/**
* Helper method to add a list of values under a key.
*
- * @param key The key to add the values under.
+ * @param key The key to add the values under.
* @param values The list of values to add.
*/
- private void addProperties(Object key, ValueList values)
- {
+ private void addProperties(Object key, ValueList values) {
ValueList list = getValueList(key);
- if (list == null)
- {
+ if (list == null) {
put(key, values.clone());
- }
- else
- {
+ } else {
list.addAll(values);
}
}
@@ -142,24 +129,19 @@ public class ConfigMap extends LinkedHashMap
/**
* Helper method to add a value under a key.
*
- * @param key The key to add the value under.
+ * @param key The key to add the value under.
* @param value The value to add.
*/
- private void addPropertyLogic(Object key, Object value)
- {
+ private void addPropertyLogic(Object key, Object value) {
ValueList list = getValueList(key);
- if (list == null)
- {
+ if (list == null) {
put(key, value);
- }
- else
- {
+ } else {
list.add(value);
}
}
- private static class ValueList extends ArrayList
- {
+ private static class ValueList extends ArrayList {
/**
* Serial version id.
*/
@@ -172,22 +154,16 @@ public class ConfigMap extends LinkedHashMap
* @param key The key.
* @return A list of values associated with the key.
*/
- private ValueList getValueList(Object key)
- {
+ private ValueList getValueList(Object key) {
ValueList list;
Object old = super.get(key);
- if (old instanceof ValueList)
- {
+ if (old instanceof ValueList) {
list = (ValueList) old;
- }
- else if (old != null)
- {
+ } else if (old != null) {
list = new ValueList();
list.add(old);
put(key, list);
- }
- else
- {
+ } else {
list = null;
}
return list;
@@ -200,8 +176,7 @@ public class ConfigMap extends LinkedHashMap
* @param name the property name
* @param value the property value
*/
- public void addProperty(String name, String value)
- {
+ public void addProperty(String name, String value) {
addPropertyLogic(name, TRIM_CONFIG_PROPERTY_VALUES && value != null ? value.trim() : value);
}
@@ -212,8 +187,7 @@ public class ConfigMap extends LinkedHashMap
* @param name the property name
* @param value the property value
*/
- public void addProperty(String name, ConfigMap value)
- {
+ public void addProperty(String name, ConfigMap value) {
addPropertyLogic(name, value);
}
@@ -222,8 +196,7 @@ public class ConfigMap extends LinkedHashMap
*
* @return a <code>Set</code> of property name <code>String</code>s.
*/
- public Set propertyNames()
- {
+ public Set propertyNames() {
return keySet();
}
@@ -231,10 +204,9 @@ public class ConfigMap extends LinkedHashMap
* Sets a property name as allowed without needing to access the property
* value. This marks a property as allowed for validation purposes.
*
- * @param name the property name to allow
+ * @param name the property name to allow
*/
- public void allowProperty(String name)
- {
+ public void allowProperty(String name) {
accessedKeys.add(name);
}
@@ -242,12 +214,11 @@ public class ConfigMap extends LinkedHashMap
* Gets the value for the given property name. Also records that this
* property was accessed.
*
- * @param name the property name
+ * @param name the property name
* @return the value for the property, or null if property does not exist
* in this map.
*/
- public Object get(Object name)
- {
+ public Object get(Object name) {
accessedKeys.add(name);
return super.get(name);
}
@@ -258,14 +229,12 @@ public class ConfigMap extends LinkedHashMap
* @param name The property name.
* @return The property object.
*/
- private Object getSinglePropertyOrFail(Object name)
- {
+ private Object getSinglePropertyOrFail(Object name) {
Object result = get(name);
- if (result instanceof ValueList)
- {
+ if (result instanceof ValueList) {
ConfigurationException exception = new ConfigurationException();
exception.setMessage
- (UNEXPECTED_MULTIPLE_VALUES, new Object[] {name});
+ (UNEXPECTED_MULTIPLE_VALUES, new Object[]{name});
throw exception;
}
return result;
@@ -277,8 +246,7 @@ public class ConfigMap extends LinkedHashMap
* @param name The property name.
* @return The property name.
*/
- public String getProperty(String name)
- {
+ public String getProperty(String name) {
return getPropertyAsString(name, null);
}
@@ -286,16 +254,14 @@ public class ConfigMap extends LinkedHashMap
* Gets the property with the specified name as a ConfigMap if possible,
* or returns the default value if the property is undefined.
*
- * @param name the property name
+ * @param name the property name
* @param defaultValue the default value
* @return ConfigMap the ConfigMap object of the property
*/
- public ConfigMap getPropertyAsMap(String name, ConfigMap defaultValue)
- {
+ public ConfigMap getPropertyAsMap(String name, ConfigMap defaultValue) {
Object prop = getSinglePropertyOrFail(name);
- if (prop instanceof ConfigMap)
- {
- return (ConfigMap)prop;
+ if (prop instanceof ConfigMap) {
+ return (ConfigMap) prop;
}
return defaultValue;
}
@@ -304,16 +270,14 @@ public class ConfigMap extends LinkedHashMap
* Gets the property with the specified name as a String if possible,
* or returns the default value if the property is undefined.
*
- * @param name the property name
+ * @param name the property name
* @param defaultValue the default value
* @return String the String value of the property
*/
- public String getPropertyAsString(String name, String defaultValue)
- {
+ public String getPropertyAsString(String name, String defaultValue) {
Object prop = getSinglePropertyOrFail(name);
- if (prop instanceof String)
- {
- return (String)prop;
+ if (prop instanceof String) {
+ return (String) prop;
}
return defaultValue;
}
@@ -322,22 +286,17 @@ public class ConfigMap extends LinkedHashMap
* Gets a property (or set of properties) as a List. If only one
* property exists it is added as the only entry to a new List.
*
- * @param name the property name
- * @param defaultValue the value to return if the property is not found
+ * @param name the property name
+ * @param defaultValue the value to return if the property is not found
* @return the value for the property as a List if it exists in this map,
* otherwise the defaultValue is returned.
*/
- public List getPropertyAsList(String name, List defaultValue)
- {
+ public List getPropertyAsList(String name, List defaultValue) {
Object prop = get(name);
- if (prop != null)
- {
- if (prop instanceof List)
- {
+ if (prop != null) {
+ if (prop instanceof List) {
return (List) prop;
- }
- else
- {
+ } else {
List list = new ArrayList();
list.add(prop);
return list;
@@ -350,16 +309,14 @@ public class ConfigMap extends LinkedHashMap
* Gets the property with the specified name as a boolean if possible,
* or returns the default value if the property is undefined.
*
- * @param name the property name
+ * @param name the property name
* @param defaultValue the default value
* @return boolean the boolean value of the property
*/
- public boolean getPropertyAsBoolean(String name, boolean defaultValue)
- {
+ public boolean getPropertyAsBoolean(String name, boolean defaultValue) {
Object prop = getSinglePropertyOrFail(name);
- if (prop instanceof String)
- {
- return Boolean.valueOf((String)prop).booleanValue();
+ if (prop instanceof String) {
+ return Boolean.valueOf((String) prop).booleanValue();
}
return defaultValue;
}
@@ -368,21 +325,16 @@ public class ConfigMap extends LinkedHashMap
* Gets the property with the specified name as an int if possible,
* or returns the default value if the property is undefined.
*
- * @param name the property name
+ * @param name the property name
* @param defaultValue the default value
* @return int the int value of the property
*/
- public int getPropertyAsInt(String name, int defaultValue)
- {
+ public int getPropertyAsInt(String name, int defaultValue) {
Object prop = getSinglePropertyOrFail(name);
- if (prop instanceof String)
- {
- try
- {
- return Integer.parseInt((String)prop);
- }
- catch (NumberFormatException ex)
- {
+ if (prop instanceof String) {
+ try {
+ return Integer.parseInt((String) prop);
+ } catch (NumberFormatException ex) {
}
}
return defaultValue;
@@ -392,21 +344,16 @@ public class ConfigMap extends LinkedHashMap
* Gets the property with the specified name as a long if possible,
* or returns the default value if the property is undefined.
*
- * @param name the property name
+ * @param name the property name
* @param defaultValue the default value
* @return long the long value of the property
*/
- public long getPropertyAsLong(String name, long defaultValue)
- {
+ public long getPropertyAsLong(String name, long defaultValue) {
Object prop = getSinglePropertyOrFail(name);
- if (prop instanceof String)
- {
- try
- {
- return Long.parseLong((String)prop);
- }
- catch (NumberFormatException ex)
- {
+ if (prop instanceof String) {
+ try {
+ return Long.parseLong((String) prop);
+ } catch (NumberFormatException ex) {
}
}
return defaultValue;
@@ -418,8 +365,7 @@ public class ConfigMap extends LinkedHashMap
*
* @return List a list of unused properties
*/
- public List findAllUnusedProperties()
- {
+ public List findAllUnusedProperties() {
List result = new ArrayList();
findUnusedProperties("", true, result);
return result;
@@ -432,35 +378,28 @@ public class ConfigMap extends LinkedHashMap
* unknown or unexpected.
*
* @param parentPath Used to track the depth of property in a potential
- * hierarchy of <code>ConfigMap</code>s.
- * @param recurse Whether sub maps should be recursively searched.
- * @param result the collection of unused properties in this map.
+ * hierarchy of <code>ConfigMap</code>s.
+ * @param recurse Whether sub maps should be recursively searched.
+ * @param result the collection of unused properties in this map.
*/
public void findUnusedProperties
- (String parentPath, boolean recurse, Collection result)
- {
+ (String parentPath, boolean recurse, Collection result) {
Iterator itr = entrySet().iterator();
- while (itr.hasNext())
- {
+ while (itr.hasNext()) {
Map.Entry entry = (Map.Entry) itr.next();
Object key = entry.getKey();
String currentPath = parentPath + '/' + String.valueOf(key);
- if (!accessedKeys.contains(key))
- {
+ if (!accessedKeys.contains(key)) {
result.add(currentPath);
- }
- else if (recurse)
- {
+ } else if (recurse) {
Object value = entry.getValue();
List values = value instanceof List ?
- (List) value : Collections.singletonList(value);
- for (int i = 0; i < values.size(); i++)
- {
+ (List) value : Collections.singletonList(value);
+ for (int i = 0; i < values.size(); i++) {
Object child = values.get(i);
- if (child instanceof ConfigMap)
- {
+ if (child instanceof ConfigMap) {
((ConfigMap) child).findUnusedProperties
- (currentPath, recurse, result);
+ (currentPath, recurse, result);
}
}
}
diff --git a/common/src/main/java/flex/messaging/config/ConfigurationConstants.java b/common/src/main/java/flex/messaging/config/ConfigurationConstants.java
index 35fcf34..14b8825 100644
--- a/common/src/main/java/flex/messaging/config/ConfigurationConstants.java
+++ b/common/src/main/java/flex/messaging/config/ConfigurationConstants.java
@@ -19,8 +19,7 @@ package flex.messaging.config;
/**
*
*/
-public interface ConfigurationConstants
-{
+public interface ConfigurationConstants {
String CONTEXT_PATH_TOKEN = "{context.root}";
String CONTEXT_PATH_ALT_TOKEN = "{context-root}";
String SLASH_CONTEXT_PATH_TOKEN = "/{context.root}";
@@ -44,7 +43,7 @@ public interface ConfigurationConstants
String DIRECTORY_ATTR = "directory-path";
String ID_ATTR = "id";
String CLASS_ATTR = "class";
- String PER_CLIENT_AUTH="per-client-authentication";
+ String PER_CLIENT_AUTH = "per-client-authentication";
String MESSAGE_TYPES_ATTR = "messageTypes";
String PROPERTIES_ELEMENT = "properties";
@@ -126,7 +125,7 @@ public interface ConfigurationConstants
// System
String SYSTEM_ELEMENT = "system";
- String ENFORCE_ENDOINT_VALIDATION ="enforce-endpoint-validation";
+ String ENFORCE_ENDOINT_VALIDATION = "enforce-endpoint-validation";
String LOCALE_ELEMENT = "locale";
String MANAGEABLE_ELEMENT = "manageable";
String DEFAULT_LOCALE_ELEMENT = "default-locale";
@@ -162,145 +161,145 @@ public interface ConfigurationConstants
// Top Level
String[] SERVICES_CONFIG_CHILDREN = {
- SERVICES_ELEMENT, SECURITY_ELEMENT, SERVERS_ELEMENT, CHANNELS_ELEMENT, LOGGING_ELEMENT,
- SYSTEM_ELEMENT, CLUSTERS_ELEMENT, FACTORIES_ELEMENT, FLEX_CLIENT_ELEMENT,
- ASYNC_MESSAGE_FILTERS_ELEMENT, SYNC_MESSAGE_FILTERS_ELEMENT, VALIDATORS_ELEMENT
+ SERVICES_ELEMENT, SECURITY_ELEMENT, SERVERS_ELEMENT, CHANNELS_ELEMENT, LOGGING_ELEMENT,
+ SYSTEM_ELEMENT, CLUSTERS_ELEMENT, FACTORIES_ELEMENT, FLEX_CLIENT_ELEMENT,
+ ASYNC_MESSAGE_FILTERS_ELEMENT, SYNC_MESSAGE_FILTERS_ELEMENT, VALIDATORS_ELEMENT
};
// Services
String[] SERVICES_CHILDREN = {
- SERVICE_ELEMENT, SERVICE_INCLUDE_ELEMENT, DEFAULT_CHANNELS_ELEMENT
+ SERVICE_ELEMENT, SERVICE_INCLUDE_ELEMENT, DEFAULT_CHANNELS_ELEMENT
};
String[] SERVICE_INCLUDE_CHILDREN = {
- SRC_ATTR, DIRECTORY_ATTR
+ SRC_ATTR, DIRECTORY_ATTR
};
String[] SERVICE_CHILDREN = {
- ID_ATTR, CLASS_ATTR, MESSAGE_TYPES_ATTR, PROPERTIES_ELEMENT,
- ADAPTERS_ELEMENT, DEFAULT_CHANNELS_ELEMENT, DEFAULT_SECURITY_CONSTRAINT_ELEMENT,
- DESTINATION_INCLUDE_ELEMENT, DESTINATION_ELEMENT
+ ID_ATTR, CLASS_ATTR, MESSAGE_TYPES_ATTR, PROPERTIES_ELEMENT,
+ ADAPTERS_ELEMENT, DEFAULT_CHANNELS_ELEMENT, DEFAULT_SECURITY_CONSTRAINT_ELEMENT,
+ DESTINATION_INCLUDE_ELEMENT, DESTINATION_ELEMENT
};
String[] SERVICE_REQ_CHILDREN = {
- ID_ATTR, CLASS_ATTR
+ ID_ATTR, CLASS_ATTR
};
String[] ADAPTER_DEFINITION_CHILDREN = {
- ID_ATTR, CLASS_ATTR, DEFAULT_ATTR, PROPERTIES_ELEMENT
+ ID_ATTR, CLASS_ATTR, DEFAULT_ATTR, PROPERTIES_ELEMENT
};
String[] ADAPTER_DEFINITION_REQ_CHILDREN = {
- ID_ATTR, CLASS_ATTR
+ ID_ATTR, CLASS_ATTR
};
String[] DESTINATION_INCLUDE_CHILDREN = {
- SRC_ATTR, DIRECTORY_ATTR
+ SRC_ATTR, DIRECTORY_ATTR
};
String[] ADAPTERS_CHILDREN = {
- ADAPTER_DEFINITION_ELEMENT, ADAPTER_INCLUDE_ELEMENT
+ ADAPTER_DEFINITION_ELEMENT, ADAPTER_INCLUDE_ELEMENT
};
String[] ADAPTER_INCLUDE_CHILDREN = {
- SRC_ATTR, DIRECTORY_ATTR
+ SRC_ATTR, DIRECTORY_ATTR
};
String[] DEFAULT_CHANNELS_CHILDREN = {
- CHANNEL_ELEMENT
+ CHANNEL_ELEMENT
};
String[] FLEX_CLIENT_CHILDREN = {
- FLEX_CLIENT_TIMEOUT_MINUTES_ELEMENT, FLEX_CLIENT_OUTBOUND_QUEUE_PROCESSOR_ELEMENT,
- ADAPTIVE_FREQUENCY, FLEX_CLIENT_RELIABLE_RECONNECT_DURATION_MILLIS, FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS
+ FLEX_CLIENT_TIMEOUT_MINUTES_ELEMENT, FLEX_CLIENT_OUTBOUND_QUEUE_PROCESSOR_ELEMENT,
+ ADAPTIVE_FREQUENCY, FLEX_CLIENT_RELIABLE_RECONNECT_DURATION_MILLIS, FLEX_CLIENT_HEARTBEAT_INTERVAL_MILLIS
};
String[] FLEX_CLIENT_OUTBOUND_QUEUE_PROCESSOR_REQ_CHILDREN = {
- CLASS_ATTR
+ CLASS_ATTR
};
// Security
String[] SECURITY_CHILDREN = {
- SECURITY_CONSTRAINT_DEFINITION_ELEMENT, LOGIN_COMMAND_ELEMENT, RECREATE_HTTPSESSION_AFTER_LOGIN_ELEMENT,
- CONSTRAINT_INCLUDE_ELEMENT
+ SECURITY_CONSTRAINT_DEFINITION_ELEMENT, LOGIN_COMMAND_ELEMENT, RECREATE_HTTPSESSION_AFTER_LOGIN_ELEMENT,
+ CONSTRAINT_INCLUDE_ELEMENT
};
String[] EMBEDDED_SECURITY_CHILDREN = {
- SECURITY_CONSTRAINT_DEFINITION_ELEMENT
+ SECURITY_CONSTRAINT_DEFINITION_ELEMENT
};
String[] SECURITY_CONSTRAINT_DEFINITION_CHILDREN = {
- REF_ATTR, ID_ATTR, AUTH_METHOD_ELEMENT, ROLES_ELEMENT
+ REF_ATTR, ID_ATTR, AUTH_METHOD_ELEMENT, ROLES_ELEMENT
};
String[] ROLES_CHILDREN = {
- ROLE_ELEMENT
+ ROLE_ELEMENT
};
String[] LOGIN_COMMAND_CHILDREN = {
- SERVER_ATTR, CLASS_ATTR, PER_CLIENT_AUTH
+ SERVER_ATTR, CLASS_ATTR, PER_CLIENT_AUTH
};
String[] LOGIN_COMMAND_REQ_CHILDREN = {
- SERVER_ATTR, CLASS_ATTR
+ SERVER_ATTR, CLASS_ATTR
};
String[] SECURITY_CONSTRAINTS_CHILDREN = {
- SECURITY_CONSTRAINT_ELEMENT
+ SECURITY_CONSTRAINT_ELEMENT
};
String[] CONSTRAINT_INCLUDE_CHILDREN = {
- SRC_ATTR, DIRECTORY_ATTR
+ SRC_ATTR, DIRECTORY_ATTR
};
// Servers
String[] SERVERS_CHILDREN = {SERVER_ELEMENT};
String[] SERVER_REQ_CHILDREN = {
- ID_ATTR, CLASS_ATTR
+ ID_ATTR, CLASS_ATTR
};
- String [] SERVER_CHILDREN = {
- ID_ATTR, CLASS_ATTR, PROPERTIES_ELEMENT
+ String[] SERVER_CHILDREN = {
+ ID_ATTR, CLASS_ATTR, PROPERTIES_ELEMENT
};
// Channels
String[] CHANNELS_CHILDREN = {
- CHANNEL_DEFINITION_ELEMENT, CHANNEL_INCLUDE_ELEMENT
+ CHANNEL_DEFINITION_ELEMENT, CHANNEL_INCLUDE_ELEMENT
};
String[] CHANNEL_DEFINITION_REQ_CHILDREN = {
- ENDPOINT_ELEMENT, ID_ATTR
+ ENDPOINT_ELEMENT, ID_ATTR
};
String[] CHANNEL_DEFINITION_CHILDREN = {
- ENDPOINT_ELEMENT, PROPERTIES_ELEMENT, SECURITY_ELEMENT, SERVER_ELEMENT,
- SECURITY_CONSTRAINT_ATTR, CLASS_ATTR, ID_ATTR, REMOTE_ATTR, SERVER_ONLY_ATTR
+ ENDPOINT_ELEMENT, PROPERTIES_ELEMENT, SECURITY_ELEMENT, SERVER_ELEMENT,
+ SECURITY_CONSTRAINT_ATTR, CLASS_ATTR, ID_ATTR, REMOTE_ATTR, SERVER_ONLY_ATTR
};
String[] CHANNEL_DEFINITION_SERVER_REQ_CHILDREN = {
- REF_ATTR
+ REF_ATTR
};
String[] CHANNEL_INCLUDE_CHILDREN = {
- SRC_ATTR, DIRECTORY_ATTR
+ SRC_ATTR, DIRECTORY_ATTR
};
String[] ENDPOINT_CHILDREN = {
- URI_ATTR, URL_ATTR, CLASS_ATTR
+ URI_ATTR, URL_ATTR, CLASS_ATTR
};
String[] DESTINATION_REQ_CHILDREN = {
- ID_ATTR
+ ID_ATTR
};
String[] DESTINATION_CHILDREN = {
- ID_ATTR, PROPERTIES_ELEMENT, CHANNELS_ELEMENT, SECURITY_ELEMENT, ADAPTER_ELEMENT,
- CHANNELS_ATTR, ADAPTER_ATTR, SECURITY_CONSTRAINT_ATTR
+ ID_ATTR, PROPERTIES_ELEMENT, CHANNELS_ELEMENT, SECURITY_ELEMENT, ADAPTER_ELEMENT,
+ CHANNELS_ATTR, ADAPTER_ATTR, SECURITY_CONSTRAINT_ATTR
};
String[] DESTINATIONS_CHILDREN = {
- DESTINATION_ELEMENT
+ DESTINATION_ELEMENT
};
String[] DESTINATION_ATTR = {
@@ -309,101 +308,101 @@ public interface ConfigurationConstants
};
String[] DESTINATION_CHANNEL_REQ_CHILDREN = {
- REF_ATTR
+ REF_ATTR
};
String[] DESTINATION_CHANNELS_CHILDREN = {
- CHANNEL_ELEMENT
+ CHANNEL_ELEMENT
};
String[] DESTINATION_ADAPTER_CHILDREN = {
- REF_ATTR
+ REF_ATTR
};
// Clustering
String[] CLUSTERING_CHILDREN = {
- CLUSTER_DEFINITION_ELEMENT
+ CLUSTER_DEFINITION_ELEMENT
};
String[] CLUSTER_DEFINITION_CHILDREN = {
- ID_ATTR, CLUSTER_PROPERTIES_ATTR
+ ID_ATTR, CLUSTER_PROPERTIES_ATTR
};
// Logging
String[] LOGGING_CHILDREN = {
- PROPERTIES_ELEMENT, LEVEL_ATTR, TARGET_ELEMENT,
+ PROPERTIES_ELEMENT, LEVEL_ATTR, TARGET_ELEMENT,
};
String[] TARGET_CHILDREN = {
- CLASS_ATTR, LEVEL_ATTR, PROPERTIES_ELEMENT, FILTERS_ELEMENT
+ CLASS_ATTR, LEVEL_ATTR, PROPERTIES_ELEMENT, FILTERS_ELEMENT
};
String[] TARGET_REQ_CHILDREN = {
- CLASS_ATTR
+ CLASS_ATTR
};
String[] FILTERS_CHILDREN = {
- PATTERN_ELEMENT
+ PATTERN_ELEMENT
};
// System
String[] SYSTEM_CHILDREN = {
- LOCALE_ELEMENT, ENFORCE_ENDOINT_VALIDATION, REDEPLOY_ELEMENT, MANAGEABLE_ELEMENT, UUID_GENERATOR_ELEMENT, DOTNET_FRAMEWORK_VERSION
+ LOCALE_ELEMENT, ENFORCE_ENDOINT_VALIDATION, REDEPLOY_ELEMENT, MANAGEABLE_ELEMENT, UUID_GENERATOR_ELEMENT, DOTNET_FRAMEWORK_VERSION
};
String[] REDEPLOY_CHILDREN = {
- ENABLED_ELEMENT, WATCH_INTERVAL_ELEMENT, WATCH_FILE_ELEMENT, TOUCH_FILE_ELEMENT
+ ENABLED_ELEMENT, WATCH_INTERVAL_ELEMENT, WATCH_FILE_ELEMENT, TOUCH_FILE_ELEMENT
};
String[] LOCALE_CHILDREN = {
- DEFAULT_LOCALE_ELEMENT
+ DEFAULT_LOCALE_ELEMENT
};
// Factories
String[] FACTORIES_CHILDREN = {
- FACTORY_ELEMENT
+ FACTORY_ELEMENT
};
String[] FACTORY_REQ_CHILDREN = {
- ID_ATTR, CLASS_ATTR
+ ID_ATTR, CLASS_ATTR
};
// Message filters
String[] ASYNC_MESSAGE_FILTERS_ELEMENT_CHILDREN = {
- FILTER_ELEMENT
+ FILTER_ELEMENT
};
String[] SYNC_MESSAGE_FILTERS_ELEMENT_CHILDREN = {
- FILTER_ELEMENT
+ FILTER_ELEMENT
};
String[] FILTER_CHILDREN = {
- ID_ATTR, CLASS_ATTR, PROPERTIES_ELEMENT
+ ID_ATTR, CLASS_ATTR, PROPERTIES_ELEMENT
};
String[] FILTER_REQ_CHILDREN = {
- ID_ATTR, CLASS_ATTR
+ ID_ATTR, CLASS_ATTR
};
// UUID Generator
String[] UUID_GENERATOR_REQ_CHILDREN = {
CLASS_ATTR
- };
+ };
// Validators
String[] VALIDATORS_CHILDREN = {
- VALIDATOR_ELEMENT
+ VALIDATOR_ELEMENT
};
String[] VALIDATOR_CHILDREN = {
- CLASS_ATTR, TYPE_ATTR, PROPERTIES_ELEMENT
+ CLASS_ATTR, TYPE_ATTR, PROPERTIES_ELEMENT
};
String[] VALIDATOR_REQ_CHILDREN = {
- CLASS_ATTR
- };
+ CLASS_ATTR
+ };
// UTILS
String LIST_DELIMITERS = ",;:";
diff --git a/common/src/main/java/flex/messaging/config/ConfigurationException.java b/common/src/main/java/flex/messaging/config/ConfigurationException.java
index 49e5285..38f57a5 100644
--- a/common/src/main/java/flex/messaging/config/ConfigurationException.java
+++ b/common/src/main/java/flex/messaging/config/ConfigurationException.java
@@ -25,8 +25,7 @@ import flex.messaging.LocalizedException;
* in the event that the configuration settings used to
* initialize the component was invalid.
*/
-public class ConfigurationException extends LocalizedException
-{
+public class ConfigurationException extends LocalizedException {
/**
* This number was generated using the 'serialver' command line tool.
* This number should remain consistent with the version used by
diff --git a/common/src/main/java/flex/messaging/config/ConfigurationFileResolver.java b/common/src/main/java/flex/messaging/config/ConfigurationFileResolver.java
index 8336d2b..bdb4e2f 100644
--- a/common/src/main/java/flex/messaging/config/ConfigurationFileResolver.java
+++ b/common/src/main/java/flex/messaging/config/ConfigurationFileResolver.java
@@ -22,10 +22,11 @@ import java.util.List;
/**
*
*/
-public interface ConfigurationFileResolver
-{
+public interface ConfigurationFileResolver {
InputStream getConfigurationFile(String path);
+
InputStream getIncludedFile(String path);
+
void popIncludedFile();
List getFiles(String dir);
diff --git a/common/src/main/java/flex/messaging/config/ConfigurationParser.java b/common/src/main/java/flex/messaging/config/ConfigurationParser.java
index ef8aaeb..230c211 100644
--- a/common/src/main/java/flex/messaging/config/ConfigurationParser.java
+++ b/common/src/main/java/flex/messaging/config/ConfigurationParser.java
@@ -19,11 +19,8 @@ package flex.messaging.config;
/**
* Configuration parser for Flex Data Services. The parser reads in
* a configuration file and populates a ServicesConfiguration instance.
- *
- *
*/
-public interface ConfigurationParser
-{
+public interface ConfigurationParser {
void parse(String path, ConfigurationFileResolver fileResolver, ServicesConfiguration config);
void reportTokens();
diff --git a/common/src/main/java/flex/messaging/config/DestinationSettings.java b/common/src/main/java/flex/messaging/config/DestinationSettings.java
index 3cd0e2f..a1e89f3 100644
--- a/common/src/main/java/flex/messaging/config/DestinationSettings.java
+++ b/common/src/main/java/flex/messaging/config/DestinationSettings.java
@@ -30,8 +30,7 @@ import java.util.List;
* to be enforced.
* </p>
*/
-public class DestinationSettings extends PropertiesSettings
-{
+public class DestinationSettings extends PropertiesSettings {
/**
*
*/
@@ -50,8 +49,7 @@ public class DestinationSettings extends PropertiesSettings
*
* @param id A string representing the unique identity of this destination.
*/
- public DestinationSettings(String id)
- {
+ public DestinationSettings(String id) {
this.id = id;
channelSettings = new ArrayList();
}
@@ -61,26 +59,21 @@ public class DestinationSettings extends PropertiesSettings
*
* @return String the destination's id.
*/
- public String getId()
- {
+ public String getId() {
return id;
}
/**
* Internal use only.
- *
*/
- String getSourceFile()
- {
+ String getSourceFile() {
return sourceFile;
}
/**
* Internal use only.
- *
*/
- void setSourceFile(String sourceFile)
- {
+ void setSourceFile(String sourceFile) {
this.sourceFile = sourceFile;
}
@@ -95,12 +88,10 @@ public class DestinationSettings extends PropertiesSettings
* the next in the list on failure).
*
* @param c the <code>ChannelSettings</code> to add to the set of
- * channel definitions for this destination.
+ * channel definitions for this destination.
*/
- public void addChannelSettings(ChannelSettings c)
- {
- if (c != null)
- {
+ public void addChannelSettings(ChannelSettings c) {
+ if (c != null) {
channelSettings.add(c);
}
}
@@ -111,8 +102,7 @@ public class DestinationSettings extends PropertiesSettings
*
* @param settings A List of <code>ChannelSettings</code>.
*/
- public void setChannelSettings(List settings)
- {
+ public void setChannelSettings(List settings) {
channelSettings = settings;
}
@@ -122,8 +112,7 @@ public class DestinationSettings extends PropertiesSettings
* @return a <code>java.util.List</code> of <code>ChannelSetting</code>s
* describing the channels that can be used to contact this destination.
*/
- public List getChannelSettings()
- {
+ public List getChannelSettings() {
return channelSettings;
}
@@ -138,8 +127,7 @@ public class DestinationSettings extends PropertiesSettings
*
* @return the <code>SecurityConstraint</code> for this destination.
*/
- public SecurityConstraint getConstraint()
- {
+ public SecurityConstraint getConstraint() {
return constraint;
}
@@ -149,10 +137,9 @@ public class DestinationSettings extends PropertiesSettings
* <code>null</code> to remove an existing constraint.
*
* @param sc the <code>SecurityConstraint</code> to apply to this
- * destination.
+ * destination.
*/
- public void setConstraint(SecurityConstraint sc)
- {
+ public void setConstraint(SecurityConstraint sc) {
constraint = sc;
}
@@ -165,10 +152,9 @@ public class DestinationSettings extends PropertiesSettings
* processing messages bound for this destination.
*
* @param a The <code>AdapterSettings</code> that describe the adapter
- * to use for this destination.
+ * to use for this destination.
*/
- public void setAdapterSettings(AdapterSettings a)
- {
+ public void setAdapterSettings(AdapterSettings a) {
adapterSettings = a;
}
@@ -179,8 +165,7 @@ public class DestinationSettings extends PropertiesSettings
* A <code>null</code> value implies the the default service adapter should
* be used.
*/
- public AdapterSettings getAdapterSettings()
- {
+ public AdapterSettings getAdapterSettings() {
return adapterSettings;
}
diff --git a/common/src/main/java/flex/messaging/config/FlexClientSettings.java b/common/src/main/java/flex/messaging/config/FlexClientSettings.java
index bba7e5a..44f52d6 100644
--- a/common/src/main/java/flex/messaging/config/FlexClientSettings.java
+++ b/common/src/main/java/flex/messaging/config/FlexClientSettings.java
@@ -19,8 +19,7 @@ package flex.messaging.config;
/**
*
*/
-public class FlexClientSettings extends PropertiesSettings
-{
+public class FlexClientSettings extends PropertiesSettings {
//--------------------------------------------------------------------------
//
// Constructor
@@ -30,8 +29,7 @@ public class FlexClientSettings extends PropertiesSettings
/**
* Constructs a FlexClientSettings instance.
*/
- public FlexClientSettings()
- {
+ public FlexClientSettings() {
// Empty for now.
}
@@ -48,8 +46,7 @@ public class FlexClientSettings extends PropertiesSettings
*
* @return The number of minutes before an idle FlexClient is timed out.
*/
- public long getTimeoutMinutes()
- {
+ public long getTimeoutMinutes() {
return timeoutMinutes;
}
@@ -58,8 +55,7 @@ public class FlexClientSettings extends PropertiesSettings
*
* @param value The number of minutes before an idle FlexClient is timed out.
*/
- public void setTimeoutMinutes(long value)
- {
+ public void setTimeoutMinutes(long value) {
timeoutMinutes = value;
}
@@ -70,8 +66,7 @@ public class FlexClientSettings extends PropertiesSettings
*
* @return The the name of the default <code>FlexClientOutboundQueueProcessorClass</code>.
*/
- public String getFlexClientOutboundQueueProcessorClassName()
- {
+ public String getFlexClientOutboundQueueProcessorClassName() {
return flexClientOutboundQueueProcessorClassName;
}
@@ -80,8 +75,7 @@ public class FlexClientSettings extends PropertiesSettings
*
* @param flexClientOutboundQueueProcessorClassName The name of the default <code>FlexClientOutboundQueueProcessor</code>.
*/
- public void setFlexClientOutboundQueueProcessorClassName(String flexClientOutboundQueueProcessorClassName)
- {
+ public void setFlexClientOutboundQueueProcessorClassName(String flexClientOutboundQueueProcessorClassName) {
this.flexClientOutboundQueueProcessorClassName = flexClientOutboundQueueProcessorClassName;
}
@@ -92,8 +86,7 @@ public class FlexClientSettings extends PropertiesSettings
*
* @return The properties for the default <code>FlexClientOutboundQueueProcessor</code>.
*/
- public ConfigMap getFlexClientOutboundQueueProcessorProperties()
- {
+ public ConfigMap getFlexClientOutboundQueueProcessorProperties() {
return flexClientOutboundQueueProcessorProperties;
}
@@ -103,32 +96,27 @@ public class FlexClientSettings extends PropertiesSettings
* @param flexClientOutboundQueueProcessorProperties properties for the default
* <code>FlexClientOutboundQueueProcessor</code>
*/
- public void setFlexClientOutboundQueueProcessorProperties(ConfigMap flexClientOutboundQueueProcessorProperties)
- {
+ public void setFlexClientOutboundQueueProcessorProperties(ConfigMap flexClientOutboundQueueProcessorProperties) {
this.flexClientOutboundQueueProcessorProperties = flexClientOutboundQueueProcessorProperties;
}
-
+
private int reliableReconnectDurationMillis;
-
- public int getReliableReconnectDurationMillis()
- {
- return reliableReconnectDurationMillis;
+
+ public int getReliableReconnectDurationMillis() {
+ return reliableReconnectDurationMillis;
}
-
- public void setReliableReconnectDurationMillis(int value)
- {
+
+ public void setReliableReconnectDurationMillis(int value) {
reliableReconnectDurationMillis = value;
}
-
+
private int heartbeatIntervalMillis;
-
- public int getHeartbeatIntervalMillis()
- {
+
+ public int getHeartbeatIntervalMillis() {
return heartbeatIntervalMillis;
}
-
- public void setHeartbeatIntervalMillis(int value)
- {
+
+ public void setHeartbeatIntervalMillis(int value) {
heartbeatIntervalMillis = value;
}
}
diff --git a/common/src/main/java/flex/messaging/config/LocalFileResolver.java b/common/src/main/java/flex/messaging/config/LocalFileResolver.java
index 04b623b..8d315e7 100644
--- a/common/src/main/java/flex/messaging/config/LocalFileResolver.java
+++ b/common/src/main/java/flex/messaging/config/LocalFileResolver.java
@@ -28,8 +28,7 @@ import java.util.Stack;
/**
*
*/
-public class LocalFileResolver implements ConfigurationFileResolver
-{
+public class LocalFileResolver implements ConfigurationFileResolver {
public static final int CLIENT = 0;
public static final int SERVER = 1;
public static final int LIVECYCLE = 2;
@@ -41,61 +40,44 @@ public class LocalFileResolver implements ConfigurationFileResolver
private Stack configurationPathStack = new Stack();
int version = CLIENT;
- public LocalFileResolver()
- {
+ public LocalFileResolver() {
}
- public LocalFileResolver(int version)
- {
+ public LocalFileResolver(int version) {
this.version = version;
}
- public void setErrorMessage(ConfigurationException e, String path)
- {
- if (version == LIVECYCLE)
- {
+ public void setErrorMessage(ConfigurationException e, String path) {
+ if (version == LIVECYCLE) {
// Invalid location: ''{0}''. Please specify a valid LiveCycle Data Services Configuration file via the LiveCycle Admin UI.
- e.setMessage(ERR_MSG_INVALID_PATH_LIVECYCLE, new Object[] {path});
- }
- else if (version == SERVER)
- {
+ e.setMessage(ERR_MSG_INVALID_PATH_LIVECYCLE, new Object[]{path});
+ } else if (version == SERVER) {
// Please specify a valid ''services.configuration.file'' in web.xml. You specified ''{0}''. This is not a valid file system path reachable via the app server and is also not a path to a resource in your J2EE application archive.
e.setMessage(ERR_MSG_INVALID_PATH_SERVER, new Object[]{path});
- }
- else
- {
+ } else {
// Please specify a valid <services/> file path in flex-config.xml.
e.setMessage(ERR_MSG_INVALID_PATH_CLIENT);
}
}
- public InputStream getConfigurationFile(String path)
- {
+ public InputStream getConfigurationFile(String path) {
File f = new File(path);
- try
- {
- if (f != null && f.exists() && f.isAbsolute())
- {
+ try {
+ if (f != null && f.exists() && f.isAbsolute()) {
FileInputStream fin = new FileInputStream(f);
pushConfigurationFile(f.getParent());
return fin;
- }
- else
- {
+ } else {
ConfigurationException e = new ConfigurationException();
setErrorMessage(e, path);
throw e;
}
- }
- catch (FileNotFoundException ex)
- {
+ } catch (FileNotFoundException ex) {
ConfigurationException e = new ConfigurationException();
setErrorMessage(e, path);
e.setRootCause(ex);
throw e;
- }
- catch (SecurityException se)
- {
+ } catch (SecurityException se) {
ConfigurationException e = new ConfigurationException();
setErrorMessage(e, path);
e.setRootCause(se);
@@ -103,46 +85,36 @@ public class LocalFileResolver implements ConfigurationFileResolver
}
}
- public InputStream getIncludedFile(String src)
- {
+ public InputStream getIncludedFile(String src) {
String path = configurationPathStack.peek() + File.separator + src;
File f = new File(path);
- try
- {
- if (f != null && f.exists() && f.isAbsolute())
- {
+ try {
+ if (f != null && f.exists() && f.isAbsolute()) {
FileInputStream fin = new FileInputStream(f);
pushConfigurationFile(f.getParent());
return fin;
- }
- else
- {
+ } else {
// Please specify a valid include file. ''{0}'' is invalid.
ConfigurationException e = new ConfigurationException();
- e.setMessage(11107, new Object[] {path});
+ e.setMessage(11107, new Object[]{path});
throw e;
}
- }
- catch (FileNotFoundException ex)
- {
+ } catch (FileNotFoundException ex) {
// Please specify a valid include file. ''{0}'' is invalid.
ConfigurationException e = new ConfigurationException();
- e.setMessage(11107, new Object[] {path});
+ e.setMessage(11107, new Object[]{path});
e.setRootCause(ex);
throw e;
- }
- catch (SecurityException se)
- {
+ } catch (SecurityException se) {
// Please specify a valid include file. ''{0}'' is invalid.
ConfigurationException e = new ConfigurationException();
- e.setMessage(11107, new Object[] {path});
+ e.setMessage(11107, new Object[]{path});
e.setRootCause(se);
throw e;
}
}
- public void popIncludedFile()
- {
+ public void popIncludedFile() {
configurationPathStack.pop();
}
@@ -153,30 +125,23 @@ public class LocalFileResolver implements ConfigurationFileResolver
* @param dir a directory relative to the current configuration file
* @return a (possibly empty) list of file names
*/
- public List getFiles(String dir)
- {
+ public List getFiles(String dir) {
List result = new ArrayList();
File f = new File(configurationPathStack.peek().toString(), dir);
- if (f.exists() && f.isDirectory())
- {
- String[] xmlFiles = f.list(new FilenameFilter()
- {
- public boolean accept(File dir, String name)
- {
+ if (f.exists() && f.isDirectory()) {
+ String[] xmlFiles = f.list(new FilenameFilter() {
+ public boolean accept(File dir, String name) {
return name.endsWith(".xml");
}
});
// prepend the directory to each filename
- for (int i = 0; i < xmlFiles.length; i++)
- {
+ for (int i = 0; i < xmlFiles.length; i++) {
String file = xmlFiles[i];
- result.add(dir + File.separator + file);
+ result.add(dir + File.separator + file);
}
return result;
- }
- else
- {
+ } else {
// Please specify a valid include directory. ''{0}'' is invalid.
ConfigurationException e = new ConfigurationException();
e.setMessage(11113, new Object[]{dir});
@@ -184,18 +149,15 @@ public class LocalFileResolver implements ConfigurationFileResolver
}
}
- private void pushConfigurationFile(String topLevelPath)
- {
+ private void pushConfigurationFile(String topLevelPath) {
configurationPathStack.push(topLevelPath);
}
- public String getIncludedPath(String src)
- {
+ public String getIncludedPath(String src) {
return configurationPathStack.peek() + File.separator + src;
}
- public long getIncludedLastModified(String src)
- {
+ public long getIncludedLastModified(String src) {
String path = configurationPathStack.peek() + File.separator + src;
File f = new File(path);
return f.lastModified();
diff --git a/common/src/main/java/flex/messaging/config/LoggingSettings.java b/common/src/main/java/flex/messaging/config/LoggingSettings.java
index 5fe26e1..6f07f00 100644
--- a/common/src/main/java/flex/messaging/config/LoggingSettings.java
+++ b/common/src/main/java/flex/messaging/config/LoggingSettings.java
@@ -22,25 +22,19 @@ import java.util.ArrayList;
/**
* A log maintains a series of Loggers for each logging category and
* Targets are established that listen for LogEvents on those Loggers.
- *
- *
*/
-public class LoggingSettings extends PropertiesSettings
-{
+public class LoggingSettings extends PropertiesSettings {
private final List targets;
- public LoggingSettings()
- {
+ public LoggingSettings() {
targets = new ArrayList();
}
- public void addTarget(TargetSettings t)
- {
+ public void addTarget(TargetSettings t) {
targets.add(t);
}
- public List getTargets()
- {
+ public List getTargets() {
return targets;
}
}
diff --git a/common/src/main/java/flex/messaging/config/LoginCommandSettings.java b/common/src/main/java/flex/messaging/config/LoginCommandSettings.java
index 2cc0ccd..89d0469 100644
--- a/common/src/main/java/flex/messaging/config/LoginCommandSettings.java
+++ b/common/src/main/java/flex/messaging/config/LoginCommandSettings.java
@@ -18,11 +18,8 @@ package flex.messaging.config;
/**
* Settings for <code>LoginCommand</code> class.
- *
- *
*/
-public class LoginCommandSettings
-{
+public class LoginCommandSettings {
public static final String SERVER_MATCH_OVERRIDE = "all";
private String className;
@@ -32,8 +29,7 @@ public class LoginCommandSettings
/**
* Create a new <code>LoginCommandSettings</code> instance with default settings.
*/
- public LoginCommandSettings()
- {
+ public LoginCommandSettings() {
perClientAuthentication = false;
}
@@ -42,8 +38,7 @@ public class LoginCommandSettings
*
* @return The class name.
*/
- public String getClassName()
- {
+ public String getClassName() {
return className;
}
@@ -52,8 +47,7 @@ public class LoginCommandSettings
*
* @param className The class name.
*/
- public void setClassName(String className)
- {
+ public void setClassName(String className) {
this.className = className;
}
@@ -62,8 +56,7 @@ public class LoginCommandSettings
*
* @return The server name.
*/
- public String getServer()
- {
+ public String getServer() {
return server;
}
@@ -72,8 +65,7 @@ public class LoginCommandSettings
*
* @param server The server name.
*/
- public void setServer(String server)
- {
+ public void setServer(String server) {
this.server = server;
}
@@ -83,8 +75,7 @@ public class LoginCommandSettings
* @return <code>true</code> if per client authentication is enabled;
* otherwise <code>false</code>.
*/
- public boolean isPerClientAuthentication()
- {
+ public boolean isPerClientAuthentication() {
return perClientAuthentication;
}
@@ -92,10 +83,9 @@ public class LoginCommandSettings
* Sets whether per client authentication is enabled or not.
*
* @param perClientAuthentication <code>true</code> if per client authentication
- * is enabled; otherwise <code>false</code>.
+ * is enabled; otherwise <code>false</code>.
*/
- public void setPerClientAuthentication(boolean perClientAuthentication)
- {
+ public void setPerClientAuthentication(boolean perClientAuthentication) {
this.perClientAuthentication = perClientAuthentication;
}
}
diff --git a/common/src/main/java/flex/messaging/config/PropertiesSettings.java b/common/src/main/java/flex/messaging/config/PropertiesSettings.java
index 4fa0a83..ede9013 100644
--- a/common/src/main/java/flex/messaging/config/PropertiesSettings.java
+++ b/common/src/main/java/flex/messaging/config/PropertiesSettings.java
@@ -30,70 +30,55 @@ import java.util.List;
* If a property element has child elements the children are recursively processed
* and added as a Map.
* </p>
- *
- *
*/
-public abstract class PropertiesSettings
-{
+public abstract class PropertiesSettings {
protected final ConfigMap properties;
- public PropertiesSettings()
- {
+ public PropertiesSettings() {
properties = new ConfigMap();
}
- public final void addProperties(ConfigMap p)
- {
+ public final void addProperties(ConfigMap p) {
properties.addProperties(p);
}
- public ConfigMap getProperties()
- {
+ public ConfigMap getProperties() {
return properties;
}
- public final String getProperty(String name)
- {
+ public final String getProperty(String name) {
return getPropertyAsString(name, null);
}
- public final void addProperty(String name, String value)
- {
+ public final void addProperty(String name, String value) {
properties.addProperty(name, value);
}
- public final void addProperty(String name, ConfigMap value)
- {
+ public final void addProperty(String name, ConfigMap value) {
properties.addProperty(name, value);
}
- public final ConfigMap getPropertyAsMap(String name, ConfigMap defaultValue)
- {
+ public final ConfigMap getPropertyAsMap(String name, ConfigMap defaultValue) {
return properties.getPropertyAsMap(name, defaultValue);
}
- public final String getPropertyAsString(String name, String defaultValue)
- {
+ public final String getPropertyAsString(String name, String defaultValue) {
return properties.getPropertyAsString(name, defaultValue);
}
- public final List getPropertyAsList(String name, List defaultValue)
- {
+ public final List getPropertyAsList(String name, List defaultValue) {
return properties.getPropertyAsList(name, defaultValue);
}
- public final int getPropertyAsInt(String name, int defaultValue)
- {
+ public final int getPropertyAsInt(String name, int defaultValue) {
return properties.getPropertyAsInt(name, defaultValue);
}
- public final boolean getPropertyAsBoolean(String name, boolean defaultValue)
- {
+ public final boolean getPropertyAsBoolean(String name, boolean defaultValue) {
return properties.getPropertyAsBoolean(name, defaultValue);
}
- public final long getPropertyAsLong(String name, long defaultValue)
- {
+ public final long getPropertyAsLong(String name, long defaultValue) {
return properties.getPropertyAsLong(name, defaultValue);
}
}
diff --git a/common/src/main/java/flex/messaging/config/SecurityConstraint.java b/common/src/main/java/flex/messaging/config/SecurityConstraint.java
index 0b7638b..c18b3b5 100644
--- a/common/src/main/java/flex/messaging/config/SecurityConstraint.java
+++ b/common/src/main/java/flex/messaging/config/SecurityConstraint.java
@@ -23,8 +23,7 @@ import java.util.List;
* Security constraints are used by the login manager to secure access to
* destinations and endpoints.
*/
-public class SecurityConstraint
-{
+public class SecurityConstraint {
/**
* String constant for basic authentication.
*/
@@ -42,8 +41,7 @@ public class SecurityConstraint
/**
* Creates an anonymous <code>SecurityConstraint</code> instance.
*/
- public SecurityConstraint()
- {
+ public SecurityConstraint() {
this(null);
}
@@ -52,8 +50,7 @@ public class SecurityConstraint
*
* @param id The id of the <code>SecurityConstraint</code> instance.
*/
- public SecurityConstraint(String id)
- {
+ public SecurityConstraint(String id) {
this.id = id;
method = CUSTOM_AUTH_METHOD;
}
@@ -63,8 +60,7 @@ public class SecurityConstraint
*
* @return List of roles.
*/
- public List getRoles()
- {
+ public List getRoles() {
return roles;
}
@@ -73,15 +69,14 @@ public class SecurityConstraint
*
* @param role New role to add to the list of roles.
*/
- public void addRole(String role)
- {
+ public void addRole(String role) {
if (role == null)
return;
if (roles == null)
roles = new ArrayList();
- roles.add(role);
+ roles.add(role);
}
/**
@@ -89,8 +84,7 @@ public class SecurityConstraint
*
* @return The id of the <code>SecurityConstraint</code>.
*/
- public String getId()
- {
+ public String getId() {
return id;
}
@@ -99,8 +93,7 @@ public class SecurityConstraint
*
* @return Authorization method.
*/
- public String getMethod()
- {
+ public String getMethod() {
return method;
}
@@ -110,8 +103,7 @@ public class SecurityConstraint
*
* @param method The authentication method to set which can be custom or basic.
*/
- public void setMethod(String method)
- {
+ public void setMethod(String method) {
if (method == null)
return;
diff --git a/common/src/main/java/flex/messaging/config/ServiceSettings.java b/common/src/main/java/flex/messaging/config/ServiceSettings.java
index 44d95b5..cb425d3 100644
--- a/common/src/main/java/flex/messaging/config/ServiceSettings.java
+++ b/common/src/main/java/flex/messaging/config/ServiceSettings.java
@@ -33,11 +33,8 @@ import java.util.Map;
* effectively represents a "whitelist"
* of actions allowed by that service.
* </p>
- *
- *
*/
-public class ServiceSettings extends PropertiesSettings
-{
+public class ServiceSettings extends PropertiesSettings {
private final String id;
private String sourceFile;
private String className;
@@ -48,62 +45,51 @@ public class ServiceSettings extends PropertiesSettings
private final Map destinationSettings;
private SecurityConstraint securityConstraint;
- public ServiceSettings(String id)
- {
+ public ServiceSettings(String id) {
this.id = id;
destinationSettings = new HashMap();
adapterSettings = new HashMap(2);
defaultChannels = new ArrayList(4);
}
- public String getId()
- {
+ public String getId() {
return id;
}
- String getSourceFile()
- {
+ String getSourceFile() {
return sourceFile;
}
- void setSourceFile(String sourceFile)
- {
+ void setSourceFile(String sourceFile) {
this.sourceFile = sourceFile;
}
- public String getClassName()
- {
+ public String getClassName() {
return className;
}
- public void setClassName(String name)
- {
+ public void setClassName(String name) {
className = name;
}
/*
* SERVER ADAPTERS
*/
- public AdapterSettings getDefaultAdapter()
- {
+ public AdapterSettings getDefaultAdapter() {
return defaultAdapterSettings;
}
- public AdapterSettings getAdapterSettings(String id)
- {
- return (AdapterSettings)adapterSettings.get(id);
+ public AdapterSettings getAdapterSettings(String id) {
+ return (AdapterSettings) adapterSettings.get(id);
}
- public Map getAllAdapterSettings()
- {
+ public Map getAllAdapterSettings() {
return adapterSettings;
}
- public void addAdapterSettings(AdapterSettings a)
- {
+ public void addAdapterSettings(AdapterSettings a) {
adapterSettings.put(a.getId(), a);
- if (a.isDefault())
- {
+ if (a.isDefault()) {
defaultAdapterSettings = a;
}
}
@@ -111,13 +97,11 @@ public class ServiceSettings extends PropertiesSettings
/*
* DEFAULT CHANNELS
*/
- public void addDefaultChannel(ChannelSettings c)
- {
+ public void addDefaultChannel(ChannelSettings c) {
defaultChannels.add(c);
}
- public List getDefaultChannels()
- {
+ public List getDefaultChannels() {
return defaultChannels;
}
@@ -132,8 +116,7 @@ public class ServiceSettings extends PropertiesSettings
*
* @return the <code>SecurityConstraint</code> for this service.
*/
- public SecurityConstraint getConstraint()
- {
+ public SecurityConstraint getConstraint() {
return securityConstraint;
}
@@ -143,23 +126,20 @@ public class ServiceSettings extends PropertiesSettings
* <code>null</code> to remove an existing constraint.
*
* @param sc the <code>SecurityConstraint</code> to apply to this
- * service.
+ * service.
*/
- public void setConstraint(SecurityConstraint sc)
- {
+ public void setConstraint(SecurityConstraint sc) {
securityConstraint = sc;
}
/*
* DESTINATIONS
*/
- public Map getDestinationSettings()
- {
+ public Map getDestinationSettings() {
return destinationSettings;
}
- public void addDestinationSettings(DestinationSettings dest)
- {
+ public void addDestinationSettings(DestinationSettings dest) {
destinationSettings.put(dest.getId(), dest);
}
}
diff --git a/common/src/main/java/flex/messaging/config/ServicesConfiguration.java b/common/src/main/java/flex/messaging/config/ServicesConfiguration.java
index 561d75b..b2c98f8 100644
--- a/common/src/main/java/flex/messaging/config/ServicesConfiguration.java
+++ b/common/src/main/java/flex/messaging/config/ServicesConfiguration.java
@@ -21,14 +21,11 @@ import java.util.Map;
/**
* Base interface for Flex Data Services configuration.
- *
+ * <p>
* Implementations may have different levels of detail
* based on how much of the configuration is supported.
- *
- *
*/
-public interface ServicesConfiguration
-{
+public interface ServicesConfiguration {
/*
* CHANNEL CONFIGURATION
*/
diff --git a/common/src/main/java/flex/messaging/config/ServicesDependencies.java b/common/src/main/java/flex/messaging/config/ServicesDependencies.java
index 92b7c34..33d9808 100644
--- a/common/src/main/java/flex/messaging/config/ServicesDependencies.java
+++ b/common/src/main/java/flex/messaging/config/ServicesDependencies.java
@@ -33,15 +33,12 @@ import flex.messaging.LocalizedException;
* to generate mixin initialization source code to be added to the SWF by
* PreLink. It also requires a list of channel classes to be added as
* dependencies.
- *
- *
*/
-public class ServicesDependencies
-{
+public class ServicesDependencies {
private static final String ADVANCED_CHANNELSET_CLASS = "mx.messaging.AdvancedChannelSet";
private static final String ADVANCED_MESSAGING_SUPPORT_CLASS = "flex.messaging.services.AdvancedMessagingSupport";
private static final String REDIRECT_URL = "redirect-url";
-
+
private boolean containsClientLoadBalancing;
private String xmlInit = "";
private StringBuffer imports = new StringBuffer();
@@ -49,21 +46,19 @@ public class ServicesDependencies
private List channelClasses;
private Map configPaths;
private Map lazyAssociations;
-
+
private static final List channel_excludes = new ArrayList();
- static
- {
+
+ static {
channel_excludes.add(REDIRECT_URL);
}
public static final boolean traceConfig = (System.getProperty("trace.config") != null);
- public ServicesDependencies(String path, String parserClass, String contextRoot)
- {
+ public ServicesDependencies(String path, String parserClass, String contextRoot) {
ClientConfiguration config = getClientConfiguration(path, parserClass);
- if (config != null)
- {
+ if (config != null) {
Map importMap = new HashMap();
lazyAssociations = new HashMap();
configPaths = config.getConfigPaths();
@@ -73,72 +68,60 @@ public class ServicesDependencies
}
}
- public Set getLazyAssociations(String destination)
- {
- if (lazyAssociations == null)
- {
+ public Set getLazyAssociations(String destination) {
+ if (lazyAssociations == null) {
lazyAssociations = new HashMap();
}
- return (Set)lazyAssociations.get(destination);
+ return (Set) lazyAssociations.get(destination);
}
- public void addLazyAssociation(String destination, String associationProp)
- {
+ public void addLazyAssociation(String destination, String associationProp) {
Set la = getLazyAssociations(destination);
- if (la == null)
- {
+ if (la == null) {
la = new HashSet();
lazyAssociations.put(destination, la);
}
la.add(associationProp);
}
- public String getServerConfigXmlInit()
- {
+ public String getServerConfigXmlInit() {
return xmlInit;
}
- public String getImports()
- {
+ public String getImports() {
return imports.toString();
}
- public String getReferences()
- {
+ public String getReferences() {
return references.toString();
}
- public List getChannelClasses()
- {
+ public List getChannelClasses() {
return channelClasses;
}
- public void addChannelClass(String className)
- {
+ public void addChannelClass(String className) {
channelClasses.add(className);
}
- public void addConfigPath(String path, long modified)
- {
+ public void addConfigPath(String path, long modified) {
configPaths.put(path, new Long(modified));
}
- public Map getConfigPaths()
- {
+ public Map getConfigPaths() {
return configPaths;
}
-
+
/**
- * Gets ActionScript source file for a class. The class will be compiled as
+ * Gets ActionScript source file for a class. The class will be compiled as
* a mixin and initialize Flex at runtime.
- *
+ *
* @param packageName - the package compiled into the generated source.
- * @param className - the class name of the generated source.
+ * @param className - the class name of the generated source.
* @return A String that represents an ActionScript Source file.
*/
- public String getServicesInitSource(String packageName, String className)
- {
+ public String getServicesInitSource(String packageName, String className) {
StringBuilder sb = new StringBuilder(2048);
sb.append("package ").append(packageName).append("\n");
@@ -172,14 +155,12 @@ public class ServicesDependencies
return sb.toString();
}
- public static ClientConfiguration getClientConfiguration(String path, String parserClass)
- {
+ public static ClientConfiguration getClientConfiguration(String path, String parserClass) {
ClientConfiguration config = new ClientConfiguration();
ConfigurationParser parser = getConfigurationParser(parserClass);
- if (parser == null)
- {
+ if (parser == null) {
// "Unable to create a parser to load messaging configuration."
LocalizedException lme = new LocalizedException();
lme.setMessage(10138);
@@ -194,85 +175,65 @@ public class ServicesDependencies
return config;
}
- static ConfigurationParser getConfigurationParser(String className)
- {
+ static ConfigurationParser getConfigurationParser(String className) {
ConfigurationParser parser = null;
Class parserClass = null;
// Check for Custom Parser Specification
- if (className != null)
- {
- try
- {
+ if (className != null) {
+ try {
parserClass = Class.forName(className);
- parser = (ConfigurationParser)parserClass.newInstance();
- }
- catch (Throwable t)
- {
- if (traceConfig)
- {
+ parser = (ConfigurationParser) parserClass.newInstance();
+ } catch (Throwable t) {
+ if (traceConfig) {
System.out.println("Could not load services configuration parser as: " + className);
}
}
}
// Try Sun JRE 1.4 / Apache Xalan Based Implementation
- if (parser == null)
- {
- try
- {
+ if (parser == null) {
+ try {
Class.forName("org.apache.xpath.CachedXPathAPI");
className = "flex.messaging.config.ApacheXPathClientConfigurationParser";
parserClass = Class.forName(className);
- parser = (ConfigurationParser)parserClass.newInstance();
- }
- catch (Throwable t)
- {
- if (traceConfig)
- {
+ parser = (ConfigurationParser) parserClass.newInstance();
+ } catch (Throwable t) {
+ if (traceConfig) {
System.out.println("Could not load configuration parser as: " + className);
}
}
}
// Try Sun JRE 1.5 Based Implementation
- if (parser == null)
- {
- try
- {
+ if (parser == null) {
+ try {
className = "flex.messaging.config.XPathClientConfigurationParser";
parserClass = Class.forName(className);
// double-check, on some systems the above loads but the import classes don't
Class.forName("javax.xml.xpath.XPathExpressionException");
- parser = (ConfigurationParser)parserClass.newInstance();
- }
- catch (Throwable t)
- {
- if (traceConfig)
- {
+ parser = (ConfigurationParser) parserClass.newInstance();
+ } catch (Throwable t) {
+ if (traceConfig) {
System.out.println("Could not load configuration parser as: " + className);
}
}
}
- if (traceConfig && parser != null)
- {
+ if (traceConfig && parser != null) {
System.out.println("Services Configuration Parser: " + parser.getClass().getName());
}
return parser;
}
- private static List listChannelClasses(ServicesConfiguration config)
- {
+ private static List listChannelClasses(ServicesConfiguration config) {
List channelList = new ArrayList();
Iterator it = config.getAllChannelSettings().values().iterator();
- while (it.hasNext())
- {
- ChannelSettings settings = (ChannelSettings)it.next();
- if (!settings.serverOnly)
- {
+ while (it.hasNext()) {
+ ChannelSettings settings = (ChannelSettings) it.next();
+ if (!settings.serverOnly) {
String clientType = settings.getClientType();
channelList.add(clientType);
}
@@ -284,20 +245,17 @@ public class ServicesDependencies
/**
* Emits source code declaration of public var xml:XML (unnamed package), containing ServicesConfiguration as e4x.
*/
- private String codegenXmlInit(ServicesConfiguration config, String contextRoot, Map serviceImportMap)
- {
+ private String codegenXmlInit(ServicesConfiguration config, String contextRoot, Map serviceImportMap) {
StringBuffer e4x = new StringBuffer();
String channelSetImplToImport = null;
e4x.append("<services>\n");
// Add default channels of the application
- if (config.getDefaultChannels().size() > 0)
- {
+ if (config.getDefaultChannels().size() > 0) {
e4x.append("\t<default-channels>\n");
- for (Iterator chanIter = config.getDefaultChannels().iterator(); chanIter.hasNext();)
- {
- String id = (String)chanIter.next();
+ for (Iterator chanIter = config.getDefaultChannels().iterator(); chanIter.hasNext(); ) {
+ String id = (String) chanIter.next();
e4x.append("\t\t<channel ref=\"" + id + "\"/>\n");
}
e4x.append("\t</default-channels>\n");
@@ -309,9 +267,8 @@ public class ServicesDependencies
if (defaultCluster != null && !defaultCluster.getURLLoadBalancing())
defaultCluster = null;
- for (Iterator servIter = config.getAllServiceSettings().iterator(); servIter.hasNext();)
- {
- ServiceSettings entry = (ServiceSettings)servIter.next();
+ for (Iterator servIter = config.getAllServiceSettings().iterator(); servIter.hasNext(); ) {
+ ServiceSettings entry = (ServiceSettings) servIter.next();
// FIXME: Need to find another way to skip BootstrapServices
// Skip services with no message types
@@ -332,14 +289,12 @@ public class ServicesDependencies
channelSetImplToImport = ADVANCED_CHANNELSET_CLASS;
String useTransactionsStr = entry.getProperties().getPropertyAsString("use-transactions", null);
- if (useTransactionsStr != null)
- {
+ if (useTransactionsStr != null) {
e4x.append("\t\t<properties>\n\t\t\t<use-transactions>" + useTransactionsStr + "</use-transactions>\n");
e4x.append("\t\t</properties>\n");
}
- for (Iterator destIter = entry.getDestinationSettings().values().iterator(); destIter.hasNext();)
- {
+ for (Iterator destIter = entry.getDestinationSettings().values().iterator(); destIter.hasNext(); ) {
DestinationSettings dest = (DestinationSettings) destIter.next();
String destination = dest.getId();
e4x.append("\t\t<destination id=\"" + destination + "\">\n");
@@ -347,12 +302,10 @@ public class ServicesDependencies
// add in the identity properties
ConfigMap metadata = dest.getProperties().getPropertyAsMap("metadata", null);
boolean closePropTag = false;
- if (metadata != null)
- {
+ if (metadata != null) {
e4x.append("\t\t\t<properties>\n\t\t\t\t<metadata\n");
String extendsStr = metadata.getPropertyAsString("extends", null);
- if (extendsStr != null)
- {
+ if (extendsStr != null) {
e4x.append(" extends=\"");
e4x.append(extendsStr);
e4x.append("\"");
@@ -360,31 +313,24 @@ public class ServicesDependencies
e4x.append(">");
closePropTag = true;
List identities = metadata.getPropertyAsList("identity", null);
- if (identities != null)
- {
+ if (identities != null) {
Iterator it = identities.iterator();
- while (it.hasNext())
- {
+ while (it.hasNext()) {
Object o = it.next();
String identityName = null;
String undefinedValue = null;
- if (o instanceof String)
- {
+ if (o instanceof String) {
identityName = (String) o;
- }
- else if (o instanceof ConfigMap)
- {
+ } else if (o instanceof ConfigMap) {
identityName = ((ConfigMap) o).getPropertyAsString("property", null);
undefinedValue = ((ConfigMap) o).getPropertyAsString("undefined-value", null);
}
- if (identityName != null)
- {
+ if (identityName != null) {
e4x.append("\t\t\t\t\t<identity property=\"");
e4x.append(identityName);
e4x.append("\"");
- if (undefinedValue != null)
- {
+ if (undefinedValue != null) {
e4x.append(" undefined-value=\"");
e4x.append(undefinedValue);
e4x.append("\"");
@@ -403,10 +349,8 @@ public class ServicesDependencies
}
String itemClass = dest.getProperties().getPropertyAsString("item-class", null);
- if (itemClass != null)
- {
- if (!closePropTag)
- {
+ if (itemClass != null) {
+ if (!closePropTag) {
e4x.append("\t\t\t<properties>\n");
closePropTag = true;
}
@@ -421,10 +365,8 @@ public class ServicesDependencies
ConfigMap clusterInfo = null;
ConfigMap pagingInfo = null;
ConfigMap reconnectInfo = null;
- if (network != null || defaultCluster != null)
- {
- if (!closePropTag)
- {
+ if (network != null || defaultCluster != null) {
+ if (!closePropTag) {
e4x.append("\t\t\t<properties>\n");
closePropTag = true;
}
@@ -432,8 +374,7 @@ public class ServicesDependencies
if (network != null)
pagingInfo = network.getPropertyAsMap("paging", null);
- if (pagingInfo != null)
- {
+ if (pagingInfo != null) {
String enabled = pagingInfo.getPropertyAsString("enabled", "false");
e4x.append("\t\t\t\t\t<paging enabled=\"");
e4x.append(enabled);
@@ -442,8 +383,7 @@ public class ServicesDependencies
// end up using this for nested properties with lazy="true".
// supporting pageSize for backwards compatibility but config options are not camelCase in general.
String size = pagingInfo.getPropertyAsString("page-size", pagingInfo.getPropertyAsString("pageSize", null));
- if (size != null)
- {
+ if (size != null) {
e4x.append(" page-size=\"");
e4x.append(size);
e4x.append("\"");
@@ -458,16 +398,14 @@ public class ServicesDependencies
if (network != null)
reconnectInfo = network.getPropertyAsMap("reconnect", null);
- if (reconnectInfo != null)
- {
+ if (reconnectInfo != null) {
String fetchOption = reconnectInfo.getPropertyAsString("fetch", "IDENTITY");
e4x.append("\t\t\t\t\t<reconnect fetch=\"");
e4x.append(fetchOption.toUpperCase());
e4x.append("\" />\n");
}
- if (network != null)
- {
+ if (network != null) {
String reliable = network.getPropertyAsString("reliable", "false");
if (Boolean.valueOf(reliable).booleanValue()) // No need the default value for the setting.
{
@@ -479,24 +417,19 @@ public class ServicesDependencies
if (network != null)
clusterInfo = network.getPropertyAsMap("cluster", null);
- if (clusterInfo != null)
- {
+ if (clusterInfo != null) {
String clusterId = clusterInfo.getPropertyAsString("ref", null);
ClusterSettings clusterSettings = config.getClusterSettings(clusterId);
if (clusterSettings != null &&
- clusterSettings.getURLLoadBalancing())
- {
+ clusterSettings.getURLLoadBalancing()) {
e4x.append("\t\t\t\t\t<cluster ref=\"");
e4x.append(clusterId);
e4x.append("\"/>\n");
}
- }
- else if (defaultCluster != null)
- {
+ } else if (defaultCluster != null) {
e4x.append("\t\t\t\t\t<cluster");
- if (defaultCluster.getClusterName() != null)
- {
+ if (defaultCluster.getClusterName() != null) {
e4x.append(" ref=\"");
e4x.append(defaultCluster.getClusterName());
e4x.append("\"");
@@ -508,10 +441,8 @@ public class ServicesDependencies
String useTransactions = dest.getProperties().getPropertyAsString("use-transactions", null);
- if (useTransactions !=null)
- {
- if (!closePropTag)
- {
+ if (useTransactions != null) {
+ if (!closePropTag) {
e4x.append("\t\t\t<properties>\n");
closePropTag = true;
}
@@ -520,24 +451,20 @@ public class ServicesDependencies
String autoSyncEnabled = dest.getProperties().getPropertyAsString("auto-sync-enabled", "true");
- if (autoSyncEnabled.equalsIgnoreCase("false"))
- {
- if (!closePropTag)
- {
+ if (autoSyncEnabled.equalsIgnoreCase("false")) {
+ if (!closePropTag) {
e4x.append("\t\t\t<properties>\n");
closePropTag = true;
}
e4x.append("\t\t\t\t<auto-sync-enabled>false</auto-sync-enabled>\n");
}
- if (closePropTag)
- {
+ if (closePropTag) {
e4x.append("\t\t\t</properties>\n");
}
e4x.append("\t\t\t<channels>\n");
- for (Iterator chanIter = dest.getChannelSettings().iterator(); chanIter.hasNext();)
- {
+ for (Iterator chanIter = dest.getChannelSettings().iterator(); chanIter.hasNext(); ) {
e4x.append("\t\t\t\t<channel ref=\"" + ((ChannelSettings) chanIter.next()).getId() + "\"/>\n");
}
e4x.append("\t\t\t</channels>\n");
@@ -548,8 +475,7 @@ public class ServicesDependencies
// channels
e4x.append("\t<channels>\n");
String channelType;
- for (Iterator chanIter = config.getAllChannelSettings().values().iterator(); chanIter.hasNext();)
- {
+ for (Iterator chanIter = config.getAllChannelSettings().values().iterator(); chanIter.hasNext(); ) {
ChannelSettings chan = (ChannelSettings) chanIter.next();
if (chan.getServerOnly()) // Skip server-only channels.
continue;
@@ -568,9 +494,8 @@ public class ServicesDependencies
e4x.append("\t\t</channel>\n");
}
e4x.append("\t</channels>\n");
- FlexClientSettings flexClientSettings = (config instanceof ClientConfiguration) ? ((ClientConfiguration)config).getFlexClientSettings() : null;
- if (flexClientSettings != null && flexClientSettings.getHeartbeatIntervalMillis() > 0)
- {
+ FlexClientSettings flexClientSettings = (config instanceof ClientConfiguration) ? ((ClientConfiguration) config).getFlexClientSettings() : null;
+ if (flexClientSettings != null && flexClientSettings.getHeartbeatIntervalMillis() > 0) {
e4x.append("\t<flex-client>\n");
e4x.append("\t\t<heartbeat-interval-millis>");
e4x.append(flexClientSettings.getHeartbeatIntervalMillis());
@@ -580,8 +505,7 @@ public class ServicesDependencies
e4x.append("</services>");
StringBuffer advancedMessagingSupport = new StringBuffer();
- if (channelSetImplToImport != null)
- {
+ if (channelSetImplToImport != null) {
serviceImportMap.put("ChannelSetImpl", channelSetImplToImport);
// Codegen same class alias registration as is done by flex2.tools.Prelink#codegenRemoteClassAliases(Map<String,String>).
@@ -594,8 +518,7 @@ public class ServicesDependencies
advancedMessagingSupport.append(" flash.net.registerClassAlias(\"" + alias + "\", " + className + ");}\n");
advancedMessagingSupport.append(" } catch (e:Error) {\n");
advancedMessagingSupport.append(" flash.net.registerClassAlias(\"" + alias + "\", " + className + "); }\n");
- if (flexClientSettings != null && flexClientSettings.getReliableReconnectDurationMillis() > 0)
- {
+ if (flexClientSettings != null && flexClientSettings.getReliableReconnectDurationMillis() > 0) {
advancedMessagingSupport.append(" AdvancedChannelSet.reliableReconnectDuration =");
advancedMessagingSupport.append(flexClientSettings.getReliableReconnectDurationMillis());
advancedMessagingSupport.append(";\n");
@@ -609,25 +532,18 @@ public class ServicesDependencies
/**
* Process channel properties recursively.
*/
- private void channelProperties(ConfigMap properties, StringBuffer buf, String indent)
- {
- for (Iterator nameIter = properties.propertyNames().iterator(); nameIter.hasNext();)
- {
- String name = (String)nameIter.next();
+ private void channelProperties(ConfigMap properties, StringBuffer buf, String indent) {
+ for (Iterator nameIter = properties.propertyNames().iterator(); nameIter.hasNext(); ) {
+ String name = (String) nameIter.next();
Object value = properties.get(name);
- if (value instanceof String)
- {
- addStringProperty(buf, indent, name, (String)value);
- }
- else if (value instanceof List)
- {
- List children = (List)value;
- for (Iterator childrenIter = children.iterator(); childrenIter.hasNext();)
- addStringProperty(buf, indent, name, (String)childrenIter.next());
- }
- else if (value instanceof ConfigMap)
- {
- ConfigMap childProperties = (ConfigMap)value;
+ if (value instanceof String) {
+ addStringProperty(buf, indent, name, (String) value);
+ } else if (value instanceof List) {
+ List children = (List) value;
+ for (Iterator childrenIter = children.iterator(); childrenIter.hasNext(); )
+ addStringProperty(buf, indent, name, (String) childrenIter.next());
+ } else if (value instanceof ConfigMap) {
+ ConfigMap childProperties = (ConfigMap) value;
buf.append(indent);
buf.append("<" + name + ">\n");
if (ConfigurationConstants.CLIENT_LOAD_BALANCING_ELEMENT.equals(name))
@@ -639,10 +555,8 @@ public class ServicesDependencies
}
}
- private void addStringProperty(StringBuffer buf, String indent, String name, String value)
- {
- if (!channel_excludes.contains(name))
- {
+ private void addStringProperty(StringBuffer buf, String indent, String name, String value) {
+ if (!channel_excludes.contains(name)) {
buf.append(indent);
buf.append("<" + name + ">" + value + "</" + name + ">\n");
}
@@ -650,22 +564,19 @@ public class ServicesDependencies
/**
* Analyze code gen service associations.
- * @param metadata the ConfigMap object
- * @param e4x the buffer object
+ *
+ * @param metadata the ConfigMap object
+ * @param e4x the buffer object
* @param destination the current destination
- * @param relation the relationship
+ * @param relation the relationship
*/
- public void codegenServiceAssociations(ConfigMap metadata, StringBuffer e4x, String destination, String relation)
- {
+ public void codegenServiceAssociations(ConfigMap metadata, StringBuffer e4x, String destination, String relation) {
List references = metadata.getPropertyAsList(relation, null);
- if (references != null)
- {
+ if (references != null) {
Iterator it = references.iterator();
- while (it.hasNext())
- {
+ while (it.hasNext()) {
Object ref = it.next();
- if (ref instanceof ConfigMap)
- {
+ if (ref instanceof ConfigMap) {
ConfigMap refMap = (ConfigMap) ref;
String name = refMap.getPropertyAsString("property", null);
String associatedDestination = refMap.getPropertyAsString("destination", null);
@@ -678,14 +589,12 @@ public class ServicesDependencies
String ordered = refMap.getPropertyAsString("ordered", null);
e4x.append("\t\t\t\t\t<");
e4x.append(relation);
- if (lazy != null)
- {
+ if (lazy != null) {
e4x.append(" lazy=\"");
e4x.append(lazy);
e4x.append("\"");
- if (Boolean.valueOf(lazy.toLowerCase().trim()).booleanValue())
- {
+ if (Boolean.valueOf(lazy.toLowerCase().trim()).booleanValue()) {
addLazyAssociation(destination, name);
}
}
@@ -695,8 +604,7 @@ public class ServicesDependencies
e4x.append(associatedDestination);
e4x.append("\"");
String readOnly = refMap.getPropertyAsString("read-only", null);
- if (readOnly != null && readOnly.equalsIgnoreCase("true"))
- {
+ if (readOnly != null && readOnly.equalsIgnoreCase("true")) {
e4x.append(" read-only=\"true\"");
}
if (loadOnDemand != null && loadOnDemand.equalsIgnoreCase("true"))
@@ -719,27 +627,26 @@ public class ServicesDependencies
/**
* This method will return an import and variable reference for channels specified in the map.
- * @param map HashMap containing the client side channel type to be used, typically of the form
- * "mx.messaging.channels.XXXXChannel", where the key and value are equal.
- * @param imports StringBuffer of the imports needed for the given channel definitions
+ *
+ * @param map HashMap containing the client side channel type to be used, typically of the form
+ * "mx.messaging.channels.XXXXChannel", where the key and value are equal.
+ * @param imports StringBuffer of the imports needed for the given channel definitions
* @param references StringBuffer of the required references so that these classes will be linked in.
*/
- public static void codegenServiceImportsAndReferences(Map map, StringBuffer imports, StringBuffer references)
- {
- String channelSetImplType = (String)map.remove("ChannelSetImpl");
+ public static void codegenServiceImportsAndReferences(Map map, StringBuffer imports, StringBuffer references) {
+ String channelSetImplType = (String) map.remove("ChannelSetImpl");
String type;
imports.append("import mx.messaging.config.ServerConfig;\n");
references.append(" // static references for configured channels\n");
- for (Iterator chanIter = map.values().iterator(); chanIter.hasNext();)
- {
- type = (String)chanIter.next();
+ for (Iterator chanIter = map.values().iterator(); chanIter.hasNext(); ) {
+ type = (String) chanIter.next();
imports.append("import ");
imports.append(type);
imports.append(";\n");
references.append(" private static var ");
references.append(type.replace('.', '_'));
references.append("_ref:");
- references.append(type.substring(type.lastIndexOf(".") +1) +";\n");
+ references.append(type.substring(type.lastIndexOf(".") + 1) + ";\n");
}
if (channelSetImplType != null)
imports.append("import mx.messaging.AdvancedChannelSet;\nimport mx.messaging.messages.ReliabilityMessage;\n");
diff --git a/common/src/main/java/flex/messaging/config/TargetSettings.java b/common/src/main/java/flex/messaging/config/TargetSettings.java
index 3bbbf4d..9d85262 100644
--- a/common/src/main/java/flex/messaging/config/TargetSettings.java
+++ b/common/src/main/java/flex/messaging/config/TargetSettings.java
@@ -27,42 +27,33 @@ import flex.messaging.log.LogCategories;
* it will accept, a list of filters for logging
* categories it is interested in, and a collection of
* properties required to initialize the target.
- *
- *
*/
-public class TargetSettings extends PropertiesSettings
-{
+public class TargetSettings extends PropertiesSettings {
private String className;
private String level;
private List filters;
- public TargetSettings(String className)
- {
+ public TargetSettings(String className) {
this.className = className;
}
- public String getClassName()
- {
+ public String getClassName() {
return className;
}
- public String getLevel()
- {
+ public String getLevel() {
return level;
}
- public void setLevel(String level)
- {
+ public void setLevel(String level) {
this.level = level;
}
- public List getFilters()
- {
+ public List getFilters() {
return filters;
}
- public void addFilter(String filter)
- {
+ public void addFilter(String filter) {
if (filters == null)
filters = new ArrayList();
diff --git a/common/src/main/java/flex/messaging/config/TokenReplacer.java b/common/src/main/java/flex/messaging/config/TokenReplacer.java
index 90c4fd0..f1b06db 100644
--- a/common/src/main/java/flex/messaging/config/TokenReplacer.java
+++ b/common/src/main/java/flex/messaging/config/TokenReplacer.java
@@ -35,18 +35,15 @@ import flex.messaging.util.StringUtils;
/**
* This class is used by configuration parser to replace tokens of the format
- * {...} with actual values. The value can either come from a JVM property
- * (eg. -Dmy.channel.id=my-amf) or from a token properties file specified via
+ * {...} with actual values. The value can either come from a JVM property
+ * (eg. -Dmy.channel.id=my-amf) or from a token properties file specified via
* token.file JVM property (eg. -Dtoken.file=/usr/local/tokens.properties) where
* the token key and value are specified in the property file.
- *
+ * <p>
* If a token value is both specified as a JVM property and inside the token.file,
* JVM property takes precedence.
- *
- *
*/
-public class TokenReplacer
-{
+public class TokenReplacer {
private static final String TOKEN_FILE = "token.file";
private static final Pattern pattern = Pattern.compile("\\{(.*?)\\}");
@@ -57,8 +54,7 @@ public class TokenReplacer
/**
* Default constructor.
*/
- public TokenReplacer()
- {
+ public TokenReplacer() {
replacedTokens = new LinkedHashMap();
loadTokenProperties();
}
@@ -66,11 +62,10 @@ public class TokenReplacer
/**
* Replace any tokens in the value of the node or the text child of the node.
*
- * @param node The node whose value will be searched for tokens.
+ * @param node The node whose value will be searched for tokens.
* @param sourceFileName The source file where the node came from.
*/
- public void replaceToken(Node node, String sourceFileName)
- {
+ public void replaceToken(Node node, String sourceFileName) {
// Exit if we are attempting to replace one of the forbidden nodes - nodes
// that may have curly brackets as part of their syntax
if (ConfigurationConstants.IP_ADDRESS_PATTERN.equals(node.getNodeName()))
@@ -79,15 +74,12 @@ public class TokenReplacer
// ReplacementNode is either the original node if it has a value or the text
// child of the node if it does not have a value
Node replacementNode;
- if (node.getNodeValue() == null)
- {
+ if (node.getNodeValue() == null) {
if (node.getChildNodes().getLength() == 1 && node.getFirstChild() instanceof Text)
replacementNode = node.getFirstChild();
else
return;
- }
- else
- {
+ } else {
replacementNode = node;
}
@@ -98,8 +90,7 @@ public class TokenReplacer
String tokenWithCurlyBraces = matcher.group();
String tokenWithoutCurlyBraces = matcher.group(1);
String propertyValue = getPropertyValue(tokenWithoutCurlyBraces);
- if (propertyValue != null)
- {
+ if (propertyValue != null) {
nodeValue = StringUtils.substitute(nodeValue, tokenWithCurlyBraces, propertyValue);
replacedTokens.put(tokenWithCurlyBraces, propertyValue);
}
@@ -109,8 +100,7 @@ public class TokenReplacer
else if (!ConfigurationConstants.CONTEXT_PATH_TOKEN.equals(tokenWithCurlyBraces)
&& !ConfigurationConstants.CONTEXT_PATH_ALT_TOKEN.equals(tokenWithCurlyBraces)
&& !ConfigurationConstants.SERVER_NAME_TOKEN.equals(tokenWithCurlyBraces)
- && !ConfigurationConstants.SERVER_PORT_TOKEN.equals(tokenWithCurlyBraces))
- {
+ && !ConfigurationConstants.SERVER_PORT_TOKEN.equals(tokenWithCurlyBraces)) {
// Token ''{0}'' in ''{1}'' was not replaced. Either supply a value to this token with a JVM option, or remove it from the configuration.
ConfigurationException ex = new ConfigurationException();
Object[] args = {tokenWithCurlyBraces, sourceFileName};
@@ -122,12 +112,11 @@ public class TokenReplacer
}
/**
- * See if the token have a value either provided as a JVM property or as
+ * See if the token have a value either provided as a JVM property or as
* part of the token property file. JVM property takes precedence on the token
* property file.
*/
- private String getPropertyValue(String tokenWithoutCurlyBraces)
- {
+ private String getPropertyValue(String tokenWithoutCurlyBraces) {
String propertyValue = System.getProperty(tokenWithoutCurlyBraces);
if (propertyValue != null)
return propertyValue;
@@ -141,27 +130,21 @@ public class TokenReplacer
/**
* Used by the parser to report the replaced tokens once logging is setup.
*/
- public void reportTokens()
- {
- if (Log.isWarn())
- {
+ public void reportTokens() {
+ if (Log.isWarn()) {
if (tokenProperties != null && Log.isDebug())
Log.getLogger(LogCategories.CONFIGURATION).debug("Token replacer is using the token file '" + tokenPropertiesFilename + "'");
- for (Iterator iter = replacedTokens.entrySet().iterator(); iter.hasNext();)
- {
- Map.Entry entry = (Map.Entry)iter.next();
- String tokenWithParanthesis = (String)entry.getKey();
- String propertyValue = (String)entry.getValue();
+ for (Iterator iter = replacedTokens.entrySet().iterator(); iter.hasNext(); ) {
+ Map.Entry entry = (Map.Entry) iter.next();
+ String tokenWithParanthesis = (String) entry.getKey();
+ String propertyValue = (String) entry.getValue();
// Issue a special warning for context.root replacements,
if (ConfigurationConstants.CONTEXT_PATH_TOKEN.equals(tokenWithParanthesis)
- || ConfigurationConstants.CONTEXT_PATH_ALT_TOKEN.equals(tokenWithParanthesis))
- {
+ || ConfigurationConstants.CONTEXT_PATH_ALT_TOKEN.equals(tokenWithParanthesis)) {
Log.getLogger(LogCategories.CONFIGURATION).warn("Token '{0}' was replaced with '{1}'. Note that this will apply to all applications on the JVM",
new Object[]{tokenWithParanthesis, propertyValue});
- }
- else if (Log.isDebug())
- {
+ } else if (Log.isDebug()) {
Log.getLogger(LogCategories.CONFIGURATION).debug("Token '{0}' was replaced with '{1}'", new Object[]{tokenWithParanthesis, propertyValue});
}
}
@@ -169,33 +152,26 @@ public class TokenReplacer
}
/**
- * Given a String, determines whether the string contains tokens.
- *
+ * Given a String, determines whether the string contains tokens.
+ *
* @param value The String to check.
* @return True if the String contains tokens.
*/
- public static boolean containsTokens(String value)
- {
- return (value != null && value.length() > 0)? pattern.matcher(value).find() : false;
+ public static boolean containsTokens(String value) {
+ return (value != null && value.length() > 0) ? pattern.matcher(value).find() : false;
}
- private void loadTokenProperties()
- {
+ private void loadTokenProperties() {
tokenPropertiesFilename = System.getProperty(TOKEN_FILE);
if (tokenPropertiesFilename == null)
return;
tokenProperties = new Properties();
- try
- {
+ try {
tokenProperties.load(new FileInputStream(tokenPropertiesFilename));
- }
- catch (FileNotFoundException e)
- {
+ } catch (FileNotFoundException e) {
tokenProperties = null;
- }
- catch (IOException e)
- {
+ } catch (IOException e) {
tokenProperties = null;
}
}
diff --git a/common/src/main/java/flex/messaging/config/XPathClientConfigurationParser.java b/common/src/main/java/flex/messaging/config/XPathClientConfigurationParser.java
index 2495754..1ecedbc 100644
--- a/common/src/main/java/flex/messaging/config/XPathClientConfigurationParser.java
+++ b/common/src/main/java/flex/messaging/config/XPathClientConfigurationParser.java
@@ -31,59 +31,42 @@ import javax.xml.xpath.XPathFactory;
* NOTE: Since reference ids are used between elements, certain
* sections of the document need to be parsed first.
* </p>
- *
- *
*/
-public class XPathClientConfigurationParser extends ClientConfigurationParser
-{
+public class XPathClientConfigurationParser extends ClientConfigurationParser {
private XPath xpath;
- protected void initializeExpressionQuery()
- {
+ protected void initializeExpressionQuery() {
this.xpath = XPathFactory.newInstance().newXPath();
}
- protected Node selectSingleNode(Node source, String expression)
- {
- try
- {
+ protected Node selectSingleNode(Node source, String expression) {
+ try {
return (Node) xpath.evaluate(expression, source, XPathConstants.NODE);
- }
- catch (XPathExpressionException expressionException)
- {
+ } catch (XPathExpressionException expressionException) {
throw wrapException(expressionException);
}
}
- protected NodeList selectNodeList(Node source, String expression)
- {
- try
- {
+ protected NodeList selectNodeList(Node source, String expression) {
+ try {
return (NodeList) xpath.evaluate(expression, source, XPathConstants.NODESET);
- }
- catch (XPathExpressionException expressionException)
- {
+ } catch (XPathExpressionException expressionException) {
throw wrapException(expressionException);
}
}
- protected Object evaluateExpression(Node source, String expression)
- {
- try
- {
+ protected Object evaluateExpression(Node source, String expression) {
+ try {
return xpath.evaluate(expression, source, XPathConstants.STRING);
- }
- catch (XPathExpressionException expressionException)
- {
+ } catch (XPathExpressionException expressionException) {
throw wrapException(expressionException);
}
}
- private ConfigurationException wrapException(XPathExpressionException exception)
- {
- ConfigurationException result = new ConfigurationException();
- result.setDetails(PARSER_INTERNAL_ERROR);
- result.setRootCause(exception);
- return result;
+ private ConfigurationException wrapException(XPathExpressionException exception) {
+ ConfigurationException result = new ConfigurationException();
+ result.setDetails(PARSER_INTERNAL_ERROR);
+ result.setRootCause(exception);
+ return result;
}
}
diff --git a/common/src/main/java/flex/messaging/log/AbstractTarget.java b/common/src/main/java/flex/messaging/log/AbstractTarget.java
index 25e7040..091696c 100644
--- a/common/src/main/java/flex/messaging/log/AbstractTarget.java
+++ b/common/src/main/java/flex/messaging/log/AbstractTarget.java
@@ -27,8 +27,7 @@ import java.util.List;
/**
*
*/
-public abstract class AbstractTarget implements Target
-{
+public abstract class AbstractTarget implements Target {
private static final int INVALID_FILTER_CHARS = 10016;
private static final int INVALID_FILTER_STAR = 10017;
@@ -48,8 +47,7 @@ public abstract class AbstractTarget implements Target
/**
* Default constructor.
*/
- public AbstractTarget()
- {
+ public AbstractTarget() {
id = UUIDUtils.createUUID();
level = LogEvent.ERROR;
filters = new ArrayList();
@@ -66,11 +64,10 @@ public abstract class AbstractTarget implements Target
/**
* Initializes the target with id and properties. Subclasses can overwrite.
*
- * @param id id for the target which is ignored.
+ * @param id id for the target which is ignored.
* @param properties ConfigMap of properties for the target.
*/
- public void initialize(String id, ConfigMap properties)
- {
+ public void initialize(String id, ConfigMap properties) {
// No-op
}
@@ -85,8 +82,7 @@ public abstract class AbstractTarget implements Target
*
* @return An unmodifiable list of filters.
*/
- public List getFilters()
- {
+ public List getFilters() {
return Collections.unmodifiableList(new ArrayList(filters));
}
@@ -95,21 +91,17 @@ public abstract class AbstractTarget implements Target
*
* @param value Filter to be added.
*/
- public void addFilter(String value)
- {
+ public void addFilter(String value) {
if (value != null)
validateFilter(value);
else // Default to "*"
value = "*";
boolean filterWasAdded = false;
- synchronized (lock)
- {
- if (!filters.contains(value))
- {
+ synchronized (lock) {
+ if (!filters.contains(value)) {
// If the default filter is being used, remove it.
- if (usingDefaultFilter)
- {
+ if (usingDefaultFilter) {
removeFilter("*");
usingDefaultFilter = false;
}
@@ -126,11 +118,9 @@ public abstract class AbstractTarget implements Target
*
* @param value Filter to be removed.
*/
- public void removeFilter(String value)
- {
+ public void removeFilter(String value) {
boolean filterWasRemoved;
- synchronized (lock)
- {
+ synchronized (lock) {
filterWasRemoved = filters.remove(value);
}
if (filterWasRemoved)
@@ -142,28 +132,22 @@ public abstract class AbstractTarget implements Target
*
* @param value List of filters.
*/
- public void setFilters(List value)
- {
- if (value != null && value.size() > 0)
- {
+ public void setFilters(List value) {
+ if (value != null && value.size() > 0) {
// a valid filter value will be fully qualified or have a wildcard
// in it. the wild card can only be located at the end of the
// expression. valid examples xx*, xx.*, *
- for (int i = 0; i < value.size(); i++)
- {
+ for (int i = 0; i < value.size(); i++) {
validateFilter((String) value.get(i));
}
- }
- else
- {
+ } else {
// if null was specified then default to all
value = new ArrayList();
value.add("*");
}
Log.removeTarget(this);
- synchronized (lock)
- {
+ synchronized (lock) {
filters = value;
usingDefaultFilter = false;
}
@@ -175,8 +159,7 @@ public abstract class AbstractTarget implements Target
*
* @return the log level set for this target.
*/
- public short getLevel()
- {
+ public short getLevel() {
return level;
}
@@ -185,16 +168,14 @@ public abstract class AbstractTarget implements Target
*
* @return the target's unique ID.
*/
- public String getId()
- {
+ public String getId() {
return id;
}
/**
* Sets the log level for this target. If not set, defaults to <code>LogEvent.ERROR</code>.
*/
- public void setLevel(short value)
- {
+ public void setLevel(short value) {
level = value;
Log.resetTargetLevel();
}
@@ -205,12 +186,9 @@ public abstract class AbstractTarget implements Target
*
* @param logger this target should listen to.
*/
- public void addLogger(Logger logger)
- {
- if (logger != null)
- {
- synchronized (lock)
- {
+ public void addLogger(Logger logger) {
+ if (logger != null) {
+ synchronized (lock) {
loggerCount++;
}
logger.addTarget(this);
@@ -222,12 +200,9 @@ public abstract class AbstractTarget implements Target
*
* @param logger this target should ignore.
*/
- public void removeLogger(Logger logger)
- {
- if (logger != null)
- {
- synchronized (lock)
- {
+ public void removeLogger(Logger logger) {
+ if (logger != null) {
+ synchronized (lock) {
loggerCount--;
}
logger.removeTarget(this);
@@ -238,8 +213,7 @@ public abstract class AbstractTarget implements Target
* @param filter category to check against the filters defined for this target
* @return whether filter is defined
*/
- public boolean containsFilter(String filter)
- {
+ public boolean containsFilter(String filter) {
return filters.contains(filter);
}
@@ -249,11 +223,9 @@ public abstract class AbstractTarget implements Target
//
//--------------------------------------------------------------------------
- private void validateFilter(String value)
- {
+ private void validateFilter(String value) {
// check for invalid characters
- if (Log.hasIllegalCharacters(value))
- {
+ if (Log.hasIllegalCharacters(value)) {
//Error for filter '{filter}'. The following characters are not valid: {Log.INVALID_CHARS}
LocalizedException ex = new LocalizedException();
ex.setMessage(INVALID_FILTER_CHARS, new Object[]{value, Log.INVALID_CHARS});
@@ -261,8 +233,7 @@ public abstract class AbstractTarget implements Target
}
int index = value.indexOf('*');
- if ((index >= 0) && (index != (value.length() - 1)))
- {
+ if ((index >= 0) && (index != (value.length() - 1))) {
//Error for filter '{filter}'. '*' must be the right most character.
LocalizedException ex = new LocalizedException();
ex.setMessage(INVALID_FILTER_STAR, new Object[]{value});
diff --git a/common/src/main/java/flex/messaging/log/ConsoleTarget.java b/common/src/main/java/flex/messaging/log/ConsoleTarget.java
index b9faf76..54c627e 100644
--- a/common/src/main/java/flex/messaging/log/ConsoleTarget.java
+++ b/common/src/main/java/flex/messaging/log/ConsoleTarget.java
@@ -19,8 +19,7 @@ package flex.messaging.log;
/**
*
*/
-public class ConsoleTarget extends LineFormattedTarget
-{
+public class ConsoleTarget extends LineFormattedTarget {
//--------------------------------------------------------------------------
//
// Constructor
@@ -30,13 +29,11 @@ public class ConsoleTarget extends LineFormattedTarget
/**
* Default constructor.
*/
- public ConsoleTarget()
- {
+ public ConsoleTarget() {
super();
}
- protected void internalLog(String message)
- {
+ protected void internalLog(String message) {
System.out.println(message);
}
}
diff --git a/common/src/main/java/flex/messaging/log/LineFormattedTarget.java b/common/src/main/java/flex/messaging/log/LineFormattedTarget.java
index 1864bb0..9afe3e5 100644
--- a/common/src/main/java/flex/messaging/log/LineFormattedTarget.java
+++ b/common/src/main/java/flex/messaging/log/LineFormattedTarget.java
@@ -27,8 +27,7 @@ import java.util.Date;
/**
*
*/
-public class LineFormattedTarget extends AbstractTarget
-{
+public class LineFormattedTarget extends AbstractTarget {
/**
* Indicates if the date should be added to the trace.
*/
@@ -75,8 +74,7 @@ public class LineFormattedTarget extends AbstractTarget
/**
* Default constructor.
*/
- public LineFormattedTarget()
- {
+ public LineFormattedTarget() {
super();
}
@@ -89,11 +87,10 @@ public class LineFormattedTarget extends AbstractTarget
/**
* Initializes the target with id and properties. Subclasses can overwrite.
*
- * @param id id for the target which is ignored.
+ * @param id id for the target which is ignored.
* @param properties ConfigMap of properties for the target.
*/
- public void initialize(String id, ConfigMap properties)
- {
+ public void initialize(String id, ConfigMap properties) {
super.initialize(id, properties);
includeTime = properties.getPropertyAsBoolean("includeTime", false);
@@ -114,8 +111,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @return <code>true</code> if category is included; <code>false</code> otherwise.
*/
- public boolean isIncludeCategory()
- {
+ public boolean isIncludeCategory() {
return includeCategory;
}
@@ -124,8 +120,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @param includeCategory the include category
*/
- public void setIncludeCategory(boolean includeCategory)
- {
+ public void setIncludeCategory(boolean includeCategory) {
this.includeCategory = includeCategory;
}
@@ -134,18 +129,16 @@ public class LineFormattedTarget extends AbstractTarget
*
* @return <code>true</code> if date is included; <code>false</code> otherwise.
*/
- public boolean isIncludeDate()
- {
+ public boolean isIncludeDate() {
return includeDate;
}
/**
* Sets includeDate property.
*
- * @param includeDate the include date
+ * @param includeDate the include date
*/
- public void setIncludeDate(boolean includeDate)
- {
+ public void setIncludeDate(boolean includeDate) {
this.includeDate = includeDate;
}
@@ -154,8 +147,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @return <code>true</code> if level is included; <code>false</code> otherwise.
*/
- public boolean isIncludeLevel()
- {
+ public boolean isIncludeLevel() {
return includeLevel;
}
@@ -164,8 +156,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @param includeLevel the include level
*/
- public void setIncludeLevel(boolean includeLevel)
- {
+ public void setIncludeLevel(boolean includeLevel) {
this.includeLevel = includeLevel;
}
@@ -174,8 +165,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @return <code>true</code> if time is included; <code>false</code> otherwise.
*/
- public boolean isIncludeTime()
- {
+ public boolean isIncludeTime() {
return includeTime;
}
@@ -184,8 +174,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @param includeTime the include time
*/
- public void setIncludeTime(boolean includeTime)
- {
+ public void setIncludeTime(boolean includeTime) {
this.includeTime = includeTime;
}
@@ -194,8 +183,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @return The prefix for log messages.
*/
- public String getPrefix()
- {
+ public String getPrefix() {
return prefix;
}
@@ -204,8 +192,7 @@ public class LineFormattedTarget extends AbstractTarget
*
* @param prefix the prefix string
*/
- public void setPrefix(String prefix)
- {
+ public void setPrefix(String prefix) {
this.prefix = prefix;
}
@@ -215,28 +202,24 @@ public class LineFormattedTarget extends AbstractTarget
* format for transmission, storage, or display.
* This method will be called only if the event's level is in range of the
* target's level.
+ *
* @param event the log event
*/
- public void logEvent(LogEvent event)
- {
+ public void logEvent(LogEvent event) {
String pre = "";
- if (prefix != null)
- {
+ if (prefix != null) {
pre = prefix + " "; // any space is stripped from config
}
String date = "";
- if (includeDate || includeTime)
- {
+ if (includeDate || includeTime) {
StringBuffer buffer = new StringBuffer();
Date d = new Date();
- if (includeDate)
- {
+ if (includeDate) {
buffer.append(dateFormater.format(d));
buffer.append(" ");
}
- if (includeTime)
- {
+ if (includeTime) {
buffer.append(timeFormatter.format(d));
buffer.append(" ");
}
@@ -244,10 +227,9 @@ public class LineFormattedTarget extends AbstractTarget
}
String cat = includeCategory ?
- ("[" + event.logger.getCategory() + "] ") : "";
+ ("[" + event.logger.getCategory() + "] ") : "";
String level = "";
- if (includeLevel)
- {
+ if (includeLevel) {
StringBuffer buffer = new StringBuffer();
buffer.append("[");
buffer.append(LogEvent.getLevelString(event.level));
@@ -274,13 +256,12 @@ public class LineFormattedTarget extends AbstractTarget
* Descendants of this class should override this method to direct the
* specified message to the desired output.
*
- * @param message String containing preprocessed log message which may
- * include time, date, category, etc. based on property settings,
- * such as <code>includeDate</code>, <code>includeCategory</code>,
- * etc.
+ * @param message String containing preprocessed log message which may
+ * include time, date, category, etc. based on property settings,
+ * such as <code>includeDate</code>, <code>includeCategory</code>,
+ * etc.
*/
- protected void internalLog(String message)
- {
+ protected void internalLog(String message) {
// override this method to perform the redirection to the desired output
}
}
diff --git a/common/src/main/java/flex/messaging/log/Log.java b/common/src/main/java/flex/messaging/log/Log.java
index 570911a..6018772 100644
--- a/common/src/main/java/flex/messaging/log/Log.java
+++ b/common/src/main/java/flex/messaging/log/Log.java
@@ -32,8 +32,7 @@ import java.util.HashSet;
/**
*
*/
-public class Log
-{
+public class Log {
public static final String INVALID_CHARS = "[]~$^&\\/(){}<>+=`!#%?,:;\'\"@";
@@ -65,8 +64,7 @@ public class Log
/**
* Private constructor.
*/
- private Log()
- {
+ private Log() {
targetLevel = LogEvent.NONE;
loggers = new HashMap();
targets = new ArrayList();
@@ -80,10 +78,8 @@ public class Log
*
* @return log.
*/
- public static Log createLog()
- {
- synchronized (staticLock)
- {
+ public static Log createLog() {
+ synchronized (staticLock) {
if (log == null)
log = new Log();
@@ -100,11 +96,10 @@ public class Log
/**
* Initializes Log with id and properties.
*
- * @param id Id for the Log which is ignored, though is used by the ManageableComponent superclass
+ * @param id Id for the Log which is ignored, though is used by the ManageableComponent superclass
* @param properties ConfigMap of properties for the Log.
*/
- public static synchronized void initialize(String id, ConfigMap properties)
- {
+ public static synchronized void initialize(String id, ConfigMap properties) {
String value = properties.getPropertyAsString("pretty-printer", null);
if (value != null)
prettyPrinterClass = value;
@@ -112,8 +107,7 @@ public class Log
// Create a HashSet with the properties that we want to exclude from the
// list of properties given by 'getPropertiesAsList'
ConfigMap excludeMap = properties.getPropertyAsMap("exclude-properties", null);
- if (excludeMap != null)
- {
+ if (excludeMap != null) {
if (excludeMap.getPropertyAsList("property", null) != null)
excludedProperties.addAll(excludeMap.getPropertyAsList("property", null));
}
@@ -127,56 +121,56 @@ public class Log
/**
* Indicates whether a fatal level log event will be processed by a log target.
+ *
* @return boolean true if it is Fatal level
*/
- public static boolean isFatal()
- {
+ public static boolean isFatal() {
return log == null ? false : log.targetLevel <= LogEvent.FATAL;
}
/**
* Indicates whether an error level log event will be processed by a log target.
+ *
* @return boolean true if it is Error level
*/
- public static boolean isError()
- {
+ public static boolean isError() {
return log == null ? false : log.targetLevel <= LogEvent.ERROR;
}
/**
* Indicates whether a warn level log event will be processed by a log target.
+ *
* @return boolean true if it is Warn level
*/
- public static boolean isWarn()
- {
+ public static boolean isWarn() {
return log == null ? false : log.targetLevel <= LogEvent.WARN;
}
/**
* Indicates whether an info level log event will be processed by a log target.
+ *
* @return boolean true if it is Info level
*/
- public static boolean isInfo()
- {
+ public static boolean isInfo() {
return log == null ? false : log.targetLevel <= LogEvent.INFO;
}
/**
* Indicates whether a debug level log event will be processed by a log target.
+ *
* @return boolean true if it is debug level
*/
- public static boolean isDebug()
- {
+ public static boolean isDebug() {
return log == null ? false : log.targetLevel <= LogEvent.DEBUG;
}
/**
* Indicates whether a log property should be excluded.
+ *
* @param property the property to check
* @return boolean true if the property should be excluded
*/
- public static boolean isExcludedProperty(String property)
- {
+ public static boolean isExcludedProperty(String property) {
return !excludedProperties.isEmpty() && excludedProperties.contains(property);
}
@@ -187,8 +181,7 @@ public class Log
* @param category Categogry for the logger.
* @return Logger associated with the category.
*/
- public static Logger getLogger(String category)
- {
+ public static Logger getLogger(String category) {
if (log != null)
return getLogger(log, category);
@@ -197,24 +190,20 @@ public class Log
}
/**
- * @param log base logger.
+ * @param log base logger.
* @param category category to log to.
* @return Logger instance for the given category.
*/
- public static Logger getLogger(Log log, String category)
- {
+ public static Logger getLogger(Log log, String category) {
checkCategory(category);
- synchronized (staticLock)
- {
+ synchronized (staticLock) {
Logger result = (Logger) log.loggers.get(category);
- if (result == null)
- {
+ if (result == null) {
result = new Logger(category);
// Check to see if there are any targets for this logger.
- for (Iterator iter = log.targets.iterator(); iter.hasNext();)
- {
+ for (Iterator iter = log.targets.iterator(); iter.hasNext(); ) {
Target target = (Target) iter.next();
if (categoryMatchInFilterList(category, target.getFilters()))
target.addLogger(result);
@@ -229,16 +218,14 @@ public class Log
/**
* Returns an unmodifiable snapshot of the targets registered with this Log when the
* method is invoked.
- * @return List the list of targets
+ *
+ * @return List the list of targets
*/
- public static List getTargets()
- {
- if (log != null)
- {
+ public static List getTargets() {
+ if (log != null) {
List currentTargets;
// Snapshot the current target list (shallow copy) and return it.
- synchronized (staticLock)
- {
+ synchronized (staticLock) {
currentTargets = Collections.unmodifiableList(new ArrayList(log.targets));
}
return currentTargets;
@@ -248,15 +235,13 @@ public class Log
/**
* Return the Log's map of targets keyed on their human-readable ids (e.g. ConsoleTarget0, ConsoleTarget1, etc.)
+ *
* @return Map the target map
*/
- public static Map getTargetMap()
- {
- if (log != null)
- {
+ public static Map getTargetMap() {
+ if (log != null) {
Map currentTargets;
- synchronized (staticLock)
- {
+ synchronized (staticLock) {
currentTargets = new LinkedHashMap(log.targetMap);
}
return currentTargets;
@@ -267,15 +252,13 @@ public class Log
/**
* Returns the target associated with the unique ID searchId. Returns null if no
* such target exists.
+ *
* @param searchId the search ID
* @return Target the associated target
*/
- public static Target getTarget(String searchId)
- {
- if (log != null)
- {
- synchronized (staticLock)
- {
+ public static Target getTarget(String searchId) {
+ if (log != null) {
+ synchronized (staticLock) {
return (Target) log.targetMap.get(searchId);
}
}
@@ -285,25 +268,20 @@ public class Log
/**
* Return the categories for all of the loggers
+ *
* @return String[] the categories for all of the loggers
*/
- public String[] getLoggers()
- {
+ public String[] getLoggers() {
String[] currentCategories;
- if (log != null)
- {
- synchronized (staticLock)
- {
+ if (log != null) {
+ synchronized (staticLock) {
Object[] currentCategoryObjects = loggers.keySet().toArray();
currentCategories = new String[currentCategoryObjects.length];
- for (int i = 0; i < currentCategoryObjects.length; i++)
- {
- currentCategories[i] = (String)(currentCategoryObjects[i]);
+ for (int i = 0; i < currentCategoryObjects.length; i++) {
+ currentCategories[i] = (String) (currentCategoryObjects[i]);
}
}
- }
- else
- {
+ } else {
currentCategories = new String[0];
}
@@ -315,21 +293,16 @@ public class Log
*
* @param target Target to be added.
*/
- public static void addTarget(Target target)
- {
- if (log != null)
- {
- if (target != null)
- {
- synchronized (staticLock)
- {
+ public static void addTarget(Target target) {
+ if (log != null) {
+ if (target != null) {
+ synchronized (staticLock) {
List filters = target.getFilters();
// need to find what filters this target matches and set the specified
// target as a listener for that logger.
Iterator it = log.loggers.keySet().iterator();
- while (it.hasNext())
- {
+ while (it.hasNext()) {
String key = (String) it.next();
if (categoryMatchInFilterList(key, filters))
target.addLogger((Logger) log.loggers.get(key));
@@ -340,12 +313,10 @@ public class Log
if (!log.targets.contains(target))
log.targets.add(target);
- if (!log.targetMap.containsValue(target))
- {
+ if (!log.targetMap.containsValue(target)) {
String name = target.getClass().getName();
- if (name.indexOf(".") > -1)
- {
+ if (name.indexOf(".") > -1) {
String[] classes = name.split("\\.");
name = classes[classes.length - 1];
}
@@ -357,14 +328,11 @@ public class Log
short targetLevel = target.getLevel();
if (log.targetLevel == LogEvent.NONE)
log.targetLevel = targetLevel;
- else if (targetLevel < log.targetLevel)
- {
+ else if (targetLevel < log.targetLevel) {
log.targetLevel = targetLevel;
}
}
- }
- else
- {
+ } else {
// Invalid target specified. Target must not be null.
LocalizedException ex = new LocalizedException();
ex.setMessage(INVALID_TARGET);
@@ -378,19 +346,14 @@ public class Log
*
* @param target The target to be removed.
*/
- public static void removeTarget(Target target)
- {
- if (log != null)
- {
- if (target != null)
- {
- synchronized (staticLock)
- {
+ public static void removeTarget(Target target) {
+ if (log != null) {
+ if (target != null) {
+ synchronized (staticLock) {
// Remove the target from any associated loggers.
List filters = target.getFilters();
Iterator it = log.loggers.keySet().iterator();
- while (it.hasNext())
- {
+ while (it.hasNext()) {
String key = (String) it.next();
if (categoryMatchInFilterList(key, filters))
target.removeLogger((Logger) log.loggers.get(key));
@@ -399,9 +362,7 @@ public class Log
log.targets.remove(target);
resetTargetLevel();
}
- }
- else
- {
+ } else {
// Invalid target specified. Target must not be null.
LocalizedException ex = new LocalizedException();
ex.setMessage(INVALID_TARGET);
@@ -420,18 +381,15 @@ public class Log
* This method removes all of the current loggers and targets from the cache.
* and resets target level.
*/
- public static synchronized void reset()
- {
+ public static synchronized void reset() {
flush();
}
/**
*
*/
- public static void flush()
- {
- if (log != null)
- {
+ public static void flush() {
+ if (log != null) {
log.loggers.clear();
log.targets.clear();
log.targetLevel = LogEvent.NONE;
@@ -442,15 +400,12 @@ public class Log
* @param l string representation of the log level.
* @return a short value representing the log level.
*/
- public static short readLevel(String l)
- {
+ public static short readLevel(String l) {
short lvl = LogEvent.ERROR;
- if ((l != null) && (l.length() > 0))
- {
+ if ((l != null) && (l.length() > 0)) {
l = l.trim().toLowerCase();
char c = l.charAt(0);
- switch (c)
- {
+ switch (c) {
case 'n':
... 83846 lines suppressed ...