onami-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From danielman...@apache.org
Subject svn commit: r1418140 [1/8] - in /incubator/onami/trunk/autobind: aop/src/main/java/org/apache/ aop/src/main/java/org/nnsoft/ aop/src/test/java/org/apache/ aop/src/test/java/org/apache/onami/ aop/src/test/java/org/nnsoft/ configuration/src/main/java/org...
Date Fri, 07 Dec 2012 00:11:37 GMT
Author: danielmanzke
Date: Fri Dec  7 00:11:06 2012
New Revision: 1418140

URL: http://svn.apache.org/viewvc?rev=1418140&view=rev
Log:
[ONAMI-22] move imported codebase to asf package
[ONAMI-23] reenable configuration of autobind

- moved autobind and its components into asf packages
- fixed the tests

Added:
    incubator/onami/trunk/autobind/aop/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/aop/src/test/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/aop/src/test/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/   (with props)
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/Configuration.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationBindingJob.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationModule.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PathConfig.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PropertiesProvider.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/StartupModule.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/   (with props)
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/ConfigurationFeature.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/package-info.java
    incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/AnnotatedWith.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/Annotations.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/Bind.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/GuiceAnnotation.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/GuiceModule.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/To.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/features/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/features/AutoBindingFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/features/ImplementationBindingFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/features/ModuleBindingFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/features/MultiBindingFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/features/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/BindingStage.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/BindingTracer.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/InstallationContext.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/BindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/ConstantBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/ImplementationBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/InstanceBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/InterfaceBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/ModuleBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/MultiBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/ProviderBindingJob.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/bindjob/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/install/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/jsr330/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/jsr330/NamedImpl.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/jsr330/Names.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/jsr330/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/ClasspathScanner.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/PackageFilter.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/ScannerModule.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/features/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/features/BindingScannerFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/features/MultiBindingScannerFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/features/ScannerFeature.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/features/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/scanner/package-info.java
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/utils/   (with props)
    incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/utils/VariableResolver.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/MethodCallingInterceptor.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/AnnotatedInheritedMethodInterceptor.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/AnnotatedMethodInterceptor.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/InheritedMethodInterceptor.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/aop/example/interceptor/InvalidMethodInterceptor.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/general/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/general/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/general/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/general/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/general/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/general/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/plist/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/plist/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/plist/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/plist/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/plist/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/commons/plist/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/dynamic/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/dynamic/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/dynamic/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/dynamic/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/dynamic/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/dynamic/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/general/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/general/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/general/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/general/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/general/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/general/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/lazy/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/lazy/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/lazy/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/lazy/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/lazy/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/lazy/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/named/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/named/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/named/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/named/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/named/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/configuration/example/map/named/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/example/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/example/starter/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/example/starter/ExampleApplication.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/example/starter/ExampleStarter.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/example/starter/ExampleStartupModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/automodule/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/automodule/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/automodule/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/automodule/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/automodule/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/jndi/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/jndi/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/jndi/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/jndi/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/guicy/jndi/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/rocoto/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/rocoto/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/rocoto/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/rocoto/ExampleConfiguration.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/rocoto/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/integrations/example/rocoto/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/inherited/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/inherited/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/inherited/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/inherited/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/inherited/InheritedExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/FirstImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/FirstMarker.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/SecondImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/marker/SecondMarker.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/multiple/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/multiple/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/multiple/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/multiple/ExampleContainer.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/multiple/ExampleOneImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/multiple/ExampleTwoImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/names/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/names/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/names/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/autobind/names/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/automodule/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/automodule/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/automodule/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/automodule/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/automodule/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/startupmodule/   (with props)
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/startupmodule/Example.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/startupmodule/ExampleApp.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/startupmodule/ExampleImpl.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/startupmodule/ExampleModule.java
    incubator/onami/trunk/autobind/examples/src/main/java/org/apache/onami/autobind/scanner/asm/example/startupmodule/ExampleStartupModule.java
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/onami/autobind/integrations/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/onami/autobind/integrations/commons/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/onami/autobind/integrations/commons/configuration/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/apache/onami/autobind/integrations/commons/configuration/CommonsConfigurationFeature.java
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/AllTests.java
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/classpath/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/classpath/ClasspathConfigTests.java
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/file/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/file/FileConfigTests.java
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/url/   (with props)
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/apache/onami/autobind/integrations/test/commons/configuration/url/URLConfigTests.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/Annotations.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/BeansXMLFeature.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/BeansXMLModule.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/features/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/features/WebFilterBindingFeature.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/features/WebServletBindingFeature.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/model/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/model/Alternatives.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/model/Beans.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/model/Decorators.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/apache/onami/autobind/enterprise/model/Interceptors.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/autobind/integrations/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/autobind/integrations/tests/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/autobind/integrations/tests/enterprise/   (with props)
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/autobind/integrations/tests/enterprise/AllTests.java
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/apache/onami/autobind/integrations/tests/enterprise/EnterpriseTests.java
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/   (with props)
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/metro/   (with props)
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/metro/AutomaticGuiceManager.java
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/metro/GuiceContextListener.java
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/metro/GuiceManaged.java
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/metro/GuiceManagedFeature.java
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/apache/onami/autobind/integrations/metro/InjectorProvider.java
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/autobind/scanner/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/autobind/scanner/asm/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/autobind/scanner/asm/ASMClasspathScanner.java
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/autobind/scanner/asm/AnnotationCollector.java
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/apache/onami/autobind/scanner/asm/package-info.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/AllTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/AutobindTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/bind/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/bind/InterfaceAutobindTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/duplicate/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/duplicate/DuplicateAutobindTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/filter/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/filter/PackageFilterTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/filter/dummy/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/filter/dummy/DummyImplementation.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/multiple/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/multiple/MultibindTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/names/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/names/NamedAutobindTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/only/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/only/ImplementationOnlyTests.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/provider/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/provider/Container.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/provider/Mode.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/provider/ProviderTest.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/startconfig/   (with props)
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/startconfig/Container.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/startconfig/Mode.java
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/apache/onami/autobind/scanner/asm/tests/autobind/startconfig/StartConfigProviderTest.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/AllTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/classpath/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/classpath/ClasspathConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/classpath/both/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/classpath/both/BothClasspathConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/classpath/values/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/classpath/values/ValuesClasspathConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/duplicate/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/duplicate/DuplicateClasspathConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/failure/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/failure/FailureConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/FileConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/both/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/both/BothFileConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/override/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/override/DirectFileConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/override/OverrideFileConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/values/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/file/values/ValueFileConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/folder/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/folder/FolderConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/URLConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/both/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/both/BothURLConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/override/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/override/DirectOverrideConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/override/OverrideConfigTests.java
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/values/   (with props)
    incubator/onami/trunk/autobind/tests/src/test/java/org/apache/onami/autobind/test/configuration/url/values/ValuesURLConfigTests.java
Removed:
    incubator/onami/trunk/autobind/aop/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/aop/src/test/java/org/nnsoft/
    incubator/onami/trunk/autobind/configuration/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/core/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/examples/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/integrations/commons.configurations/src/test/java/org/nnsoft/
    incubator/onami/trunk/autobind/integrations/enterprise/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/java/org/nnsoft/
    incubator/onami/trunk/autobind/integrations/metro/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/scanner/asm/src/main/java/org/nnsoft/
    incubator/onami/trunk/autobind/scanner/asm/src/test/java/org/nnsoft/
    incubator/onami/trunk/autobind/tests/src/test/java/org/nnsoft/
Modified:
    incubator/onami/trunk/autobind/examples/pom.xml
    incubator/onami/trunk/autobind/examples/src/main/resources/jndi.properties
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/resources/META-INF/beans.xml
    incubator/onami/trunk/autobind/integrations/enterprise/src/test/resources/beans.xml
    incubator/onami/trunk/autobind/integrations/metro/src/test/resources/jndi.properties
    incubator/onami/trunk/autobind/integrations/pom.xml
    incubator/onami/trunk/autobind/scanner/asm/pom.xml
    incubator/onami/trunk/autobind/tests/pom.xml

Propchange: incubator/onami/trunk/autobind/aop/src/main/java/org/apache/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/aop/src/test/java/org/apache/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/aop/src/test/java/org/apache/onami/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/
------------------------------------------------------------------------------
    bugtraq:number = true

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/Configuration.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/Configuration.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/Configuration.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/Configuration.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,100 @@
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */
+
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import static org.apache.onami.autobind.configuration.Configuration.Type.CONFIGURATION;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+import java.util.Properties;
+
+import javax.inject.Named;
+
+/**
+ * Use this Annotation to express your need, that a Configuration should be
+ * loaded, so it can be bound to an Object.
+ */
+@Documented
+@Retention( RUNTIME )
+@Target( TYPE )
+public @interface Configuration
+{
+
+    /**
+     * Name the Configuration should be bound to.
+     *
+     * @return Name the Configuration should be bound to.
+     */
+    Named name() default @Named( "" );
+
+    /**
+     * Path/URL where the Configuration could be found.
+     *
+     * @return Path/URL where the Configuration could be found.
+     */
+    PathConfig location();
+
+    PathConfig alternative() default @PathConfig( "" );
+
+    /**
+     * Class/Interface where the Configuration should be bound to.
+     *
+     * @return Class/Interface where the Configuration should be bound to.
+     */
+    Class<? extends Object> to() default Properties.class;
+
+    /**
+     * This does only make sense if you are using the Provider Interface. public class Service{
+     *
+     * @Inject Provider<Properties> properties; public void do(){ Properties properties = properties.get(); } }
+     * @return true if the Configuration should be load lazy
+     */
+    boolean lazy() default false;
+
+    /**
+     * Specify what should be bound for the Configuration Configuration -> Configuration only Values -> Named Bindings
+     * for the Values Both -> Configuration and Named Bindings
+     *
+     * @return
+     */
+    Type type() default CONFIGURATION;
+
+    public static enum Type
+    {
+
+        /**
+         * Binds only the Configuration itself.
+         */
+        CONFIGURATION,
+
+        /**
+         * Named Bindings for the Key/Values (only possible if not lazy)
+         */
+        VALUES,
+
+        /**
+         * The Configuration and Named Bindings will be done. (only possible if not lazy)
+         */
+        BOTH
+
+    }
+
+}

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationBindingJob.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationBindingJob.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationBindingJob.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationBindingJob.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,44 @@
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */
+
+import static com.google.common.base.Objects.toStringHelper;
+
+import java.lang.annotation.Annotation;
+
+import org.apache.onami.autobind.install.bindjob.BindingJob;
+
+public class ConfigurationBindingJob
+    extends BindingJob
+{
+
+    public ConfigurationBindingJob( Annotation annotated, String location )
+    {
+        super( null, null, annotated, location, null );
+    }
+
+    @Override
+    public String toString()
+    {
+        return toStringHelper( getClass().getSimpleName() )
+               .add( "annotated", annotated )
+               .add( "className", className )
+               .toString();
+    }
+
+}

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationModule.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationModule.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationModule.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/ConfigurationModule.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,79 @@
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.inject.Singleton;
+
+import org.apache.onami.autobind.annotations.GuiceModule;
+import org.apache.onami.configuration.configuration.PropertiesURLReader;
+
+@Singleton
+@GuiceModule
+public class ConfigurationModule
+    extends org.apache.onami.configuration.configuration.ConfigurationModule
+{
+	
+	protected List<PropertiesURLReader> readers = new ArrayList<PropertiesURLReader>();
+	
+	protected boolean bindSystemProperties;
+
+	protected boolean bindEnvironment;
+
+
+    @Override
+    protected void bindConfigurations()
+    {
+        // TODO what was the default implementation in rocoto 4.x?
+    	for(PropertiesURLReader reader : readers){
+    		 try
+             {
+                 bindProperties( reader.readConfiguration() );
+             }
+             catch ( Exception e )
+             {
+                 addError( "An error occurred while reading properties from '%s': %s", reader.getUrl(),
+                           e.getMessage() );
+             }
+    	}
+    	
+    	if(bindEnvironment){
+    		super.bindEnvironmentVariables();	
+    	}
+    	if(bindSystemProperties){
+    		super.bindSystemProperties();	
+    	}
+    }
+    
+    @Override
+    protected void bindEnvironmentVariables() {
+    	bindEnvironment = true;
+    }
+    
+    @Override
+    protected void bindSystemProperties() {
+    	bindSystemProperties = true;
+    }
+    
+    public void addConfigurationReader(PropertiesURLReader reader){
+    	this.readers.add(reader);
+    }
+
+}

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PathConfig.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PathConfig.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PathConfig.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PathConfig.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,53 @@
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */
+
+import static org.apache.onami.autobind.configuration.PathConfig.PathType.CLASSPATH;
+
+import java.lang.annotation.Documented;
+
+@Documented
+public @interface PathConfig
+{
+
+    String value();
+
+    PathType type() default CLASSPATH;
+
+    public static enum PathType
+    {
+
+        /**
+         * Use the Classloader to fetch the Configuration
+         */
+        CLASSPATH,
+
+        /**
+         * Tries to load the Configuration from a File. Can be absolute or relative. Relative to the the Path of
+         * ClassLoader.getResources("/").
+         */
+        FILE,
+
+        /**
+         * Can be each Kind of URL. file:/, classpath:/, http://
+         */
+        URL
+
+    }
+
+}

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PropertiesProvider.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PropertiesProvider.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PropertiesProvider.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/PropertiesProvider.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,68 @@
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */
+
+import static java.lang.String.format;
+import static java.util.logging.Level.WARNING;
+import static java.util.logging.Logger.getLogger;
+
+import java.net.URL;
+import java.util.Properties;
+import java.util.logging.Logger;
+
+import javax.inject.Provider;
+
+import org.apache.onami.configuration.configuration.PropertiesURLReader;
+
+public class PropertiesProvider
+    implements Provider<Properties>
+{
+
+    private final Logger _logger = getLogger( getClass().getName() );
+
+    private URL url;
+
+    private boolean isXML;
+
+    public PropertiesProvider( URL url, boolean isXML )
+    {
+        super();
+        this.url = url;
+        this.isXML = isXML;
+    }
+
+    @Override
+    public Properties get()
+    {
+        try
+        {
+            _logger.info( format( "Doing lazy Loading for Configuration %s", url ) );
+            PropertiesURLReader reader = new PropertiesURLReader( url );
+            if(isXML){
+            	reader.inXMLFormat();
+            }
+			return reader.readConfiguration();
+        }
+        catch ( Exception e )
+        {
+            _logger.log( WARNING, format( "Configuration in %s couldn't be read.", url), e );
+            return new Properties();
+        }
+    }
+
+}

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/StartupModule.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/StartupModule.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/StartupModule.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/StartupModule.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,304 @@
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */
+
+import static com.google.inject.TypeLiteral.get;
+import static java.lang.System.getProperty;
+import static java.util.Collections.addAll;
+import static java.util.logging.Level.FINE;
+import static java.util.logging.Level.INFO;
+import static java.util.logging.Logger.getLogger;
+import static org.apache.onami.autobind.jsr330.Names.named;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.logging.Logger;
+
+import org.apache.onami.autobind.annotations.features.AutoBindingFeature;
+import org.apache.onami.autobind.annotations.features.ImplementationBindingFeature;
+import org.apache.onami.autobind.annotations.features.ModuleBindingFeature;
+import org.apache.onami.autobind.annotations.features.MultiBindingFeature;
+import org.apache.onami.autobind.install.BindingTracer;
+import org.apache.onami.autobind.install.InstallationContext;
+import org.apache.onami.autobind.install.bindjob.BindingJob;
+import org.apache.onami.autobind.scanner.ClasspathScanner;
+import org.apache.onami.autobind.scanner.PackageFilter;
+import org.apache.onami.autobind.scanner.ScannerModule;
+import org.apache.onami.autobind.scanner.features.ScannerFeature;
+import org.apache.onami.configuration.configuration.PropertiesURLReader;
+
+import com.google.inject.AbstractModule;
+import com.google.inject.Binder;
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.Module;
+import com.google.inject.multibindings.Multibinder;
+
+/**
+ * The StartupModule is used for creating an initial Injector, which binds and
+ * instantiates the Scanning module. Due the fact that we have multiple Scanner
+ * Implementations, you have to pass the Class for the Scanner and the Packages
+ * which should be scanned. You can override the bindAnnotationListeners-Method,
+ * to add your own {@link ScannerFeature}.
+ */
+public abstract class StartupModule extends AbstractModule {
+
+	protected final Logger _logger = getLogger(getClass().getName());
+
+	protected PackageFilter[] _packages;
+
+	protected Class<? extends ClasspathScanner> _scanner;
+
+	protected List<Class<? extends ScannerFeature>> _features = new ArrayList<Class<? extends ScannerFeature>>();
+
+	protected boolean bindSystemProperties;
+
+	protected boolean bindEnvironment;
+
+	protected boolean bindStartupConfiguration = true;
+
+	protected boolean verbose = (getProperty("org.apache.onami.autobind.verbose") != null ? true
+			: false);
+
+	public StartupModule(Class<? extends ClasspathScanner> scanner,
+			PackageFilter... filter) {
+		_packages = (filter == null ? new PackageFilter[0] : filter);
+		_scanner = scanner;
+	}
+
+	@Override
+	public void configure() {
+		List<PackageFilter> packages = new ArrayList<PackageFilter>();
+		addAll(packages, _packages);
+		addAll(packages, bindPackages());
+
+		_packages = packages.toArray(new PackageFilter[packages.size()]);
+		Module scannerModule = new AbstractModule() {
+			@Override
+			protected void configure() {
+				Binder binder = binder();
+				if (_logger.isLoggable(FINE)) {
+					_logger.fine("Binding ClasspathScanner to "
+							+ _scanner.getName());
+					for (PackageFilter p : _packages) {
+						_logger.fine("Using Package " + p + " for scanning.");
+					}
+				}
+
+				binder.bind(InstallationContext.class).asEagerSingleton();
+				binder.bind(ClasspathScanner.class).to(_scanner);
+				binder.bind(get(PackageFilter[].class))
+						.annotatedWith(named("packages")).toInstance(_packages);
+				Set<URL> classpath = findClassPaths();
+				binder.bind(get(URL[].class))
+						.annotatedWith(named("classpath"))
+						.toInstance(
+								classpath.toArray(new URL[classpath.size()]));
+
+				bindFeatures(binder);
+			}
+		};
+
+		ConfigurationModule configurationModule = new ConfigurationModule();
+		if (bindSystemProperties) {
+			configurationModule.bindSystemProperties();
+		}
+		if (bindEnvironment) {
+			configurationModule.bindEnvironmentVariables();
+		}
+
+		if (bindStartupConfiguration) {
+			URL startup = getClass().getResource("/conf/startup.xml");
+			if (startup != null) {
+				try {
+					URI startupURI = startup.toURI();
+					_logger.log(INFO, "Startup Config is used from Path: "
+							+ startupURI);
+					PropertiesURLReader reader = new PropertiesURLReader(
+							startup);
+					reader.inXMLFormat();
+					configurationModule.addConfigurationReader(reader);
+				} catch (URISyntaxException e) {
+					_logger.log(INFO,
+							"Startup Config couldn't be found in Classpath.", e);
+				}
+			} else {
+				_logger.log(INFO,
+						"Startup Config couldn't be found, so it is not used.");
+			}
+		}
+
+		Injector internal = Guice.createInjector(scannerModule,
+				configurationModule);
+		binder().install(internal.getInstance(ScannerModule.class));
+		binder().install(configurationModule);
+
+		if (verbose) {
+			BindingTracer tracer = internal.getInstance(BindingTracer.class);
+
+			StringBuilder builder = new StringBuilder(
+					"Following Binding were processed.\n");
+			for (BindingJob job : tracer) {
+				builder.append(job.toString()).append("\n");
+			}
+			_logger.info(builder.toString());
+		}
+	}
+
+	protected abstract Multibinder<ScannerFeature> bindFeatures(Binder binder);
+
+	protected PackageFilter[] bindPackages() {
+		return new PackageFilter[0];
+	}
+
+	protected Set<URL> findClassPaths() {
+		Set<URL> urlSet = new HashSet<URL>();
+
+		ClassLoader loader = Thread.currentThread().getContextClassLoader();
+		while (loader != null) {
+			if (loader instanceof URLClassLoader) {
+				URL[] urls = ((URLClassLoader) loader).getURLs();
+				Collections.addAll(urlSet, urls);
+			}
+			loader = loader.getParent();
+		}
+
+		String classpath = System.getProperty("java.class.path");
+		if (classpath != null && classpath.length() > 0) {
+			try {
+				URL resource = StartupModule.class.getResource("/");
+
+				if (resource == null) {
+					String className = StartupModule.class.getName().replace(
+							'.', '/')
+							+ ".class";
+					resource = StartupModule.class.getResource(className);
+
+					if (resource != null) {
+						String url = resource.toExternalForm();
+						url = url.substring(0,
+								url.length() - className.length());
+						resource = new URL(url);
+					}
+				}
+
+				if (resource != null) {
+					classpath = classpath + File.pathSeparator
+							+ new File(resource.toURI()).getAbsolutePath();
+				}
+			} catch (URISyntaxException e) {
+				// FIXME ignore for now
+			} catch (MalformedURLException e) {
+				// FIXME ignore for now
+			}
+
+			for (String path : classpath.split(File.pathSeparator)) {
+				File file = new File(path);
+				try {
+					if (file.exists()) {
+						urlSet.add(file.toURI().toURL());
+					}
+				} catch (MalformedURLException e) {
+					_logger.log(INFO,
+							"Found invalid URL in Classpath: " + path, e);
+				}
+			}
+		}
+
+		return urlSet;
+	}
+
+	public StartupModule addFeature(Class<? extends ScannerFeature> listener) {
+		_features.add(listener);
+		return this;
+	}
+
+	public StartupModule bindSystemProperties() {
+		bindSystemProperties = true;
+		return this;
+	}
+
+	public StartupModule disableStartupConfiguration() {
+		bindStartupConfiguration = false;
+		return this;
+	}
+
+	public StartupModule bindEnvironment() {
+		bindEnvironment = true;
+		return this;
+	}
+
+	public void verbose() {
+		verbose = true;
+	}
+
+	public static StartupModule create(
+			Class<? extends ClasspathScanner> scanner, PackageFilter... filter) {
+		return new DefaultStartupModule(scanner, filter);
+	}
+
+	public static class DefaultStartupModule extends StartupModule {
+		public DefaultStartupModule(Class<? extends ClasspathScanner> scanner,
+				PackageFilter... filter) {
+			super(scanner, filter);
+		}
+
+		@Override
+		protected Multibinder<ScannerFeature> bindFeatures(Binder binder) {
+			Multibinder<ScannerFeature> listeners = Multibinder.newSetBinder(
+					binder, ScannerFeature.class);
+			listeners.addBinding().to(AutoBindingFeature.class);
+			listeners.addBinding().to(ImplementationBindingFeature.class);
+			listeners.addBinding().to(MultiBindingFeature.class);
+			listeners.addBinding().to(ModuleBindingFeature.class);
+
+			for (Class<? extends ScannerFeature> listener : _features) {
+				listeners.addBinding().to(listener);
+			}
+
+			return listeners;
+		}
+
+		@Override
+		protected PackageFilter[] bindPackages() {
+			try {
+				return new PackageFilter[] { PackageFilter
+						.create(Thread
+								.currentThread()
+								.getContextClassLoader()
+								.loadClass(
+										"org.apache.onami.autobind.configuration.ConfigurationModule"),
+								false) };
+			} catch (ClassNotFoundException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+				return new PackageFilter[0];
+			}
+		}
+	}
+
+}

Propchange: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/
------------------------------------------------------------------------------
    bugtraq:number = true

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/ConfigurationFeature.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/ConfigurationFeature.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/ConfigurationFeature.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/ConfigurationFeature.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,254 @@
+package org.apache.onami.autobind.configuration.features;
+
+/*
+ * 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.
+ */
+
+import static java.lang.String.format;
+import static java.util.logging.Level.INFO;
+import static java.util.logging.Level.WARNING;
+import static java.util.logging.Logger.getLogger;
+import static org.apache.onami.autobind.configuration.Configuration.Type.BOTH;
+import static org.apache.onami.autobind.configuration.Configuration.Type.CONFIGURATION;
+import static org.apache.onami.autobind.configuration.Configuration.Type.VALUES;
+import static org.apache.onami.autobind.install.BindingStage.BOOT_BEFORE;
+import static org.apache.onami.autobind.install.BindingStage.IGNORE;
+
+import java.io.File;
+import java.lang.annotation.Annotation;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Map;
+import java.util.Properties;
+import java.util.logging.Logger;
+
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Provider;
+import javax.inject.Singleton;
+
+import org.apache.onami.autobind.configuration.Configuration;
+import org.apache.onami.autobind.configuration.ConfigurationBindingJob;
+import org.apache.onami.autobind.configuration.ConfigurationModule;
+import org.apache.onami.autobind.configuration.PathConfig;
+import org.apache.onami.autobind.configuration.PropertiesProvider;
+import org.apache.onami.autobind.install.BindingStage;
+import org.apache.onami.autobind.install.bindjob.BindingJob;
+import org.apache.onami.autobind.scanner.features.BindingScannerFeature;
+import org.apache.onami.configuration.configuration.PropertiesURLReader;
+
+/**
+ * This class will bind a Properties-Instance or -Provider for each Class
+ * annotated with {@link Configuration}.
+ */
+@Singleton
+public class ConfigurationFeature
+    extends BindingScannerFeature
+{
+
+    private final Logger _logger = getLogger( getClass().getName() );
+
+    @Inject
+    private ConfigurationModule module;
+
+    @Override
+    public BindingStage accept( Class<Object> annotatedClass, Map<String, Annotation> annotations )
+    {
+        if ( annotations.containsKey( Configuration.class.getName() ) )
+        {
+            Configuration config = (Configuration) annotations.get( Configuration.class.getName() );
+            if ( Properties.class.isAssignableFrom( config.to() ) )
+            {
+                return BOOT_BEFORE;
+            }
+        }
+        return IGNORE;
+    }
+
+    @Override
+    public void process( Class<Object> annotatedClass, Map<String, Annotation> annotations )
+    {
+        Configuration config = (Configuration) annotations.get( Configuration.class.getName() );
+        Named name = config.name();
+
+        URL url = null;
+        if ( config.alternative().value().length() > 0 )
+        {
+            url = findURL( name, config.alternative() );
+            if ( url != null )
+            {
+                try
+                {
+                    // TODO Use an Executor to test, if the Stream can be opened?
+                    // FIXME What happens if Error Page is returned?
+                    /*
+                     * final URL alternativeURL = url; Future<URL> submit =
+                     * Executors.newSingleThreadExecutor().submit(new Callable<URL>() {
+                     * @Override public URL call() throws Exception { alternativeURL.openConnection().getInputStream();
+                     * return alternativeURL; } }); submit.get(5, TimeUnit.SECONDS);
+                     */
+                    url.openStream();
+                }
+                catch ( Exception e )
+                {
+                    url = null;
+                }
+            }
+        }
+
+        if ( url == null )
+        {
+            url = findURL( name, config.location() );
+        }
+
+        if ( url == null )
+        {
+            _logger.log( WARNING, format( "Ignoring Configuration %s in %s because is couldn't be found in the Classpath.",
+                                          name, config.location() ) );
+            // TODO Throw an exception if config doesn't exist?
+            return;
+        }
+
+        if ( VALUES == config.type() || BOTH == config.type() )
+        {
+            BindingJob job = new ConfigurationBindingJob( config.name(), url.toString() );
+            if ( !tracer.contains( job ) )
+            {
+                /* && !(url.toString().startsWith("jar:")) */
+                _logger.log( INFO, format( "Trying to bind \"%s\" to rocoto Module.", url ) );
+                PropertiesURLReader reader = new PropertiesURLReader( url ); 
+                if(url.toString().endsWith( ".xml" )){
+                	reader.inXMLFormat();
+                }
+                module.addConfigurationReader( reader );
+                // TODO do we need protocol handling? file:/, ...
+                tracer.add( job );
+            }
+        }
+
+        if ( CONFIGURATION == config.type() || BOTH == config.type() )
+        {
+            boolean isXML;
+            String path = url.toString();
+            if ( path.endsWith( ".xml" ) )
+            {
+                isXML = true;
+            }
+            else if ( path.endsWith( ".properties" ) )
+            {
+                isXML = false;
+            }
+            else
+            {
+                _logger.log( WARNING, format( "Ignoring Configuration %s in %s because it doesn't end with .xml or .properties.",
+                                              name, config.location() ) );
+                // TODO Throw an exception if config has another format?
+                return;
+            }
+
+            Named named = null;
+            if ( name.value().length() > 0 )
+            {
+                named = name;
+            }
+
+            if ( !config.lazy() )
+            {
+                Properties properties;
+                try
+                {
+                	PropertiesURLReader reader = new PropertiesURLReader( url ); 
+                    if(isXML){
+                    	reader.inXMLFormat();
+                    }
+                    properties = reader.readConfiguration();
+                }
+                catch ( Exception e )
+                {
+                    _logger.log( WARNING, format( "Configuration %s in %s cannot be loaded: %s",
+                                                  name, url, e.getMessage() ), e );
+                    return;
+                }
+
+                bindInstance( properties, Properties.class, named, null );
+            }
+            else
+            {
+                Provider<Properties> provider = new PropertiesProvider( url, isXML );
+                bindProvider( provider, Properties.class, named, Singleton.class );
+            }
+        }
+    }
+
+    private URL findURL( Named name, PathConfig config )
+    {
+        URL url = null;
+        String path = resolver.resolve( config.value() );
+
+        switch ( config.type() )
+        {
+            case FILE:
+                File file = new File( path );
+                if ( !file.exists() )
+                {
+                    _logger.log( WARNING, format( "Ignoring Configuration %s in %s, no Configuration found in %s",
+                                                  name, path, file.getAbsolutePath() ) );
+                    return null;
+                }
+                if ( file.isFile() )
+                {
+                    try
+                    {
+                        url = file.toURI().toURL();
+                    }
+                    catch ( MalformedURLException e )
+                    {
+                        _logger.log( WARNING, format( "Ignoring Configuration %s in %s due to illegal URL location",
+                                                      name, path ), e );
+                        return null;
+                    }
+                } /*
+                   * else if (file.isDirectory()) { for (File entry : file.listFiles()) { try { url =
+                   * entry.toURI().toURL(); } catch (MalformedURLException e) { _logger.log(Level.WARNING,
+                   * "Ignoring Configuration " + name + " in " + path + ". It has an illegal URL-Format.", e); return
+                   * null; } } }
+                   */
+
+                break;
+
+            case URL:
+                try
+                {
+                    url = new URL( path );
+                }
+                catch ( MalformedURLException e )
+                {
+                    _logger.log( WARNING, format( "Ignoring Configuration %s in %s due to illegal URL location",
+                                                  name, path ), e );
+                    return null;
+                }
+                break;
+
+            case CLASSPATH:
+            default:
+                url = this.getClass().getResource( path );
+                break;
+        }
+
+        return url;
+    }
+
+}

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/package-info.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/package-info.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/package-info.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/features/package-info.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,21 @@
+/**
+ * TODO fill me
+ */
+package org.apache.onami.autobind.configuration.features;
+
+/*
+ * 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.
+ */

Added: incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/package-info.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/package-info.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/package-info.java (added)
+++ incubator/onami/trunk/autobind/configuration/src/main/java/org/apache/onami/autobind/configuration/package-info.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,21 @@
+/**
+ * TODO fill me
+ */
+package org.apache.onami.autobind.configuration;
+
+/*
+ * 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.
+ */

Propchange: incubator/onami/trunk/autobind/core/src/main/java/org/apache/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/
------------------------------------------------------------------------------
    bugtraq:number = true

Propchange: incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/
------------------------------------------------------------------------------
    bugtraq:number = true

Added: incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/AnnotatedWith.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/AnnotatedWith.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/AnnotatedWith.java (added)
+++ incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/AnnotatedWith.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,43 @@
+package org.apache.onami.autobind.annotations;
+
+/*
+ * 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.
+ */
+
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Annotation;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.inject.Qualifier;
+
+/**
+ * Can be used to tell the autobind which annotations should be recognized.
+ * If {@link AnnotatedWith} is not used or {@link AnnotatedWith}.annotations() is empty,
+ * all annotations will be used, which can be found.
+ */
+@Qualifier
+@GuiceAnnotation
+@Retention( RUNTIME )
+@Target( { TYPE } )
+public @interface AnnotatedWith
+{
+
+    Class<? super Annotation>[] value() default {};
+
+}

Added: incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/Annotations.java
URL: http://svn.apache.org/viewvc/incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/Annotations.java?rev=1418140&view=auto
==============================================================================
--- incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/Annotations.java (added)
+++ incubator/onami/trunk/autobind/core/src/main/java/org/apache/onami/autobind/annotations/Annotations.java Fri Dec  7 00:11:06 2012
@@ -0,0 +1,140 @@
+package org.apache.onami.autobind.annotations;
+
+/*
+ * 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.
+ */
+
+import static org.apache.onami.autobind.annotations.To.Type.INTERFACES;
+import static org.apache.onami.autobind.jsr330.Names.named;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Array;
+
+import javax.inject.Named;
+
+import org.apache.onami.autobind.annotations.To.Type;
+
+public class Annotations
+{
+
+    /**
+     * Hidden constructor, this class cannot be instantiated.
+     */
+    protected Annotations()
+    {
+        // do nothing
+    }
+
+    public static Bind createBind()
+    {
+        return createBind( INTERFACES );
+    }
+
+    public static Bind createBind( final Type type )
+    {
+        return new Bind()
+        {
+
+            @Override
+            public Class<? extends Annotation> annotationType()
+            {
+                return Bind.class;
+            }
+
+            @Override
+            public Named value()
+            {
+                return named( "" );
+            }
+
+            @Override
+            public AnnotatedWith annotatedWith() {
+                return null;
+            }
+
+            @Override
+            public To to()
+            {
+                return createTo( type );
+            }
+
+            @Override
+            public boolean multiple()
+            {
+                return false;
+            }
+
+        };
+    }
+
+    @SuppressWarnings("unchecked")
+    public static AnnotatedWith createAnnotatedWith( )
+    {
+        return createAnnotatedWith( (Class<? super Annotation>[]) Array.newInstance(Annotation.class, 0) );
+    }
+
+    public static AnnotatedWith createAnnotatedWith( final Class<? super Annotation>... annotations )
+    {
+        return new AnnotatedWith()
+        {
+
+            @Override
+            public Class<? extends Annotation> annotationType()
+            {
+                return AnnotatedWith.class;
+            }
+
+            @Override
+            public Class<? super Annotation>[] value()
+            {
+                return annotations;
+            }
+
+        };
+    }
+
+    public static To createTo()
+    {
+        return createTo( INTERFACES );
+    }
+
+    public static To createTo( final Type type )
+    {
+        return new To()
+        {
+
+            @Override
+            public Class<? extends Annotation> annotationType()
+            {
+                return To.class;
+            }
+
+            @Override
+            public Type value()
+            {
+                return type;
+            }
+
+            @Override
+            public Class<? extends Object>[] customs()
+            {
+                return new Class<?>[0];
+            }
+
+        };
+    }
+
+}



Mime
View raw message