http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleAssembly.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleAssembly.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleAssembly.java deleted file mode 100644 index 8965815..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleAssembly.java +++ /dev/null @@ -1,243 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import java.util.function.Predicate; -import org.apache.zest.api.activation.Activator; -import org.apache.zest.api.structure.Module; -import org.apache.zest.api.type.HasTypes; -import org.apache.zest.bootstrap.unitofwork.DefaultUnitOfWorkAssembler; - -/** - * The ModuleAssembly is used to register any information about * what the module should contain, such as composites, - * entities and services. - * <p> - * Use the methods and the fluent API's to declare how the module should be constructed. - * </p> - */ -public interface ModuleAssembly -{ - /** - * Access the layer assembly for this module. - * - * @return The Layer containing this Module. - */ - LayerAssembly layer(); - - /** - * Get an assembly for a particular Module. If this is called many times with the same names, then the same module - * is affected. - * - * @param layerName The name of the Layer - * @param moduleName The name of the Module to retrieve or create. - * - * @return The ModuleAssembly for the Module. - */ - ModuleAssembly module( String layerName, String moduleName ); - - /** - * Set the name of this module. - * - * @param name The name that this Module should have. - * - * @return This instance to support the fluid DSL of bootstrap. - */ - ModuleAssembly setName( String name ); - - /** - * Access the currently set name for this module. - * - * @return The name of this Module. - */ - String name(); - - ModuleAssembly setMetaInfo( Object info ); - - /** - * Set the module activators. Activators are executed in order around the - * Module activation and passivation. - * - * @param activators the module activators - * - * @return the assembly - */ - @SuppressWarnings( { "unchecked", "varargs" } ) - ModuleAssembly withActivators( Class<? extends Activator<Module>>... activators ); - - /** - * Declare a list of TransientComposites for this Module. Use the TransientDeclaration that is returned to - * declare further settings. Note that the TransientDeclaration works on all of the types specified. - * - * @param transientTypes The types that specifies the Transient types. - * - * @return An TransientDeclaration for the specified Transient types. - */ - TransientDeclaration transients( Class<?>... transientTypes ); - - /** - * Given a Specification for TransientAssembly's, returns a TransientDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the TransientComposite types of interest. - * - * @return An TransientDeclaration for the specified TransientComposite types. - */ - TransientDeclaration transients( Predicate<? super TransientAssembly> specification ); - - /** - * Declare a list of ValueComposites for this Module. Use the ValueDeclaration that is returned to - * declare further settings. Note that the ValueDeclaration works on all of the types specified. - * - * @param valueTypes The types that specifies the Value types. - * - * @return An ValueDeclaration for the specified Value types. - */ - ValueDeclaration values( Class<?>... valueTypes ); - - /** - * Given a Specification for ValueAssembly's, returns a ValueDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the ValueComposite types of interest. - * - * @return An ValueDeclaration for the specified ValueComposite types. - */ - ValueDeclaration values( Predicate<? super ValueAssembly> specification ); - - /** - * Declare a list of EntityComposites for this Module. Use the EntityDeclaration that is returned to - * declare further settings. Note that the EntityDeclaration works on all of the types specified. - * - * @param entityTypes The types that specifies the Entity types. - * - * @return An EntityDeclaration for the specified Entity types. - */ - EntityDeclaration entities( Class<?>... entityTypes ); - - /** - * Given a Specification for EntityAssembly's, returns a EntityDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the EntityComposite types of interest. - * - * @return An EntityDeclaration for the specified EntityComposite types. - */ - EntityDeclaration entities( Predicate<? super EntityAssembly> specification ); - - /** - * Declare a list of Configuration Composites for this Module. Use the ConfigurationDeclaration that is returned to - * declare further settings. Note that the ConfigurationDeclaration works on all of the types specified. - * - * @param configurationTypes The types that specifies the Configuration types. - * - * @return An ConfigurationDeclaration for the specified Configuration types. - */ - ConfigurationDeclaration configurations( Class<?>... configurationTypes ); - - /** - * Given a Specification for ConfigurationAssembly's, returns a ConfigurationDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the ConfigurationComposite types of interest. - * - * @return An ConfigurationDeclaration for the specified EntityComposite types. - */ - ConfigurationDeclaration configurations( Predicate<HasTypes> specification ); - - /** - * Declare a list of object classes for this Module. Use the ObjectDeclaration that is returned to - * declare further settings. Note that the ObjectDeclaration works on all of the types specified. - * - * @param objectTypes The types that specifies the Object types. - * - * @return An ObjectDeclaration for the specified Object types. - * - * @throws AssemblyException on invalid assembly - */ - ObjectDeclaration objects( Class<?>... objectTypes ) - throws AssemblyException; - - /** - * Given a Specification for ObjectAssembly's, returns a ObjectDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the Object types of interest. - * - * @return An ObjectDeclaration for the specified Object types. - */ - ObjectDeclaration objects( Predicate<? super ObjectAssembly> specification ); - - /** - * Create a list of ServiceComposites for this Module. Use the ServiceDeclaration that is returned to - * declare further settings. This will always create new assemblies for the specified types, instead - * of potentially working on already declared types like the services(...) method. - * - * @param serviceTypes The types that specifies the Service types. - * - * @return An ServiceDeclaration for the specified Service types. - */ - ServiceDeclaration addServices( Class<?>... serviceTypes ); - - /** - * Declare a list of ServiceComposites for this Module. Use the ServiceDeclaration that is returned to - * declare further settings. Note that the ServiceDeclaration works on all of the types specified. - * - * @param serviceTypes The types that specifies the Service types. - * - * @return An ServiceDeclaration for the specified Service types. - */ - ServiceDeclaration services( Class<?>... serviceTypes ); - - /** - * Given a Specification for ServiceAssembly's, returns a ServiceDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the ServiceComposite types of interest. - * - * @return An ServiceDeclaration for the specified ServiceComposite types. - */ - ServiceDeclaration services( Predicate<? super ServiceAssembly> specification ); - - /** - * Declare a list of imported services for this Module. Use the ImportedServiceDeclaration that is returned to - * declare further settings. Note that the ImportedServiceDeclaration works on all of the types specified. - * - * @param serviceTypes The types that specifies the Imported Service types. - * - * @return An ImportedServiceDeclaration for the specified Imported Service types. - */ - ImportedServiceDeclaration importedServices( Class<?>... serviceTypes ); - - /** - * Given a Specification for ImportedServiceAssembly's, returns a ImportedServiceDeclaration that can - * be used to work with all of the assemblies matched by the specification. - * - * @param specification The Specification that specifies the Imported Service types of interest. - * - * @return An ImportedServiceDeclaration for the specified Imported Service types. - */ - ImportedServiceDeclaration importedServices( Predicate<? super ImportedServiceAssembly> specification ); - - <T> MixinDeclaration<T> forMixin( Class<T> mixinType ); - - public <ThrowableType extends Throwable> void visit( AssemblyVisitor<ThrowableType> visitor ) - throws ThrowableType; -}
http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleName.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleName.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleName.java deleted file mode 100644 index e6de34c..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ModuleName.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -/** - * Set the name of the module - */ -public final class ModuleName - implements Assembler -{ - private final String name; - - public ModuleName( String name ) - { - this.name = name; - } - - @Override - public void assemble( ModuleAssembly module ) - throws AssemblyException - { - module.setName( name ); - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/NamedAssociationDeclarations.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/NamedAssociationDeclarations.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/NamedAssociationDeclarations.java deleted file mode 100644 index 6969494..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/NamedAssociationDeclarations.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import java.lang.reflect.AccessibleObject; -import org.apache.zest.api.common.MetaInfo; - -/** - * This provides declared {@link org.apache.zest.api.association.NamedAssociation} information that the runtime can use. - */ -public interface NamedAssociationDeclarations -{ - MetaInfo metaInfoFor( AccessibleObject accessor ); -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectAssembly.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectAssembly.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectAssembly.java deleted file mode 100644 index c9b4ef9..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectAssembly.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.type.HasTypes; - -/** - * This represents the assembly information of a single object type in a Module. - */ -public interface ObjectAssembly - extends HasTypes -{ -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectDeclaration.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectDeclaration.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectDeclaration.java deleted file mode 100644 index 7b7f6da..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ObjectDeclaration.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.common.Visibility; - -/** - * Fluent API for declaring objects.Instances - * of this API are acquired by calling {@link ModuleAssembly#objects(Class[])}. - */ -public interface ObjectDeclaration -{ - ObjectDeclaration setMetaInfo( Object info ); - - ObjectDeclaration visibleIn( Visibility visibility ) - throws IllegalStateException; -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/RuntimeFactory.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/RuntimeFactory.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/RuntimeFactory.java deleted file mode 100644 index 326dd0c..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/RuntimeFactory.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -/** - * Polygene runtime factory. - */ -public interface RuntimeFactory -{ - PolygeneRuntime createRuntime(); - - /** - * Standalone application Polygene runtime factory. - */ - public final class StandaloneApplicationRuntimeFactory - implements RuntimeFactory - { - @Override - public PolygeneRuntime createRuntime() - { - ClassLoader loader = getClass().getClassLoader(); - try - { - Class<? extends PolygeneRuntime> runtimeClass = loadRuntimeClass( loader ); - return runtimeClass.newInstance(); - } - catch( ClassNotFoundException e ) - { - System.err.println( "Polygene Runtime jar is not present in the classpath." ); - } - catch( InstantiationException | IllegalAccessException e ) - { - System.err.println( "Invalid Polygene Runtime class. If you are providing your own Polygene Runtime, please " + - "contact [email protected] mailing list for assistance." ); - } - return null; - } - - @SuppressWarnings( { "unchecked" } ) - private Class<? extends PolygeneRuntime> loadRuntimeClass( ClassLoader loader ) - throws ClassNotFoundException - { - return (Class<? extends PolygeneRuntime>) loader.loadClass( "org.apache.zest.runtime.PolygeneRuntimeImpl" ); - } - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceAssembly.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceAssembly.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceAssembly.java deleted file mode 100644 index 4d0c2a2..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceAssembly.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.identity.Identifiable; -import org.apache.zest.api.type.HasTypes; - -/** - * This represents the assembly information of a single ServiceComposite in a Module. - */ -public interface ServiceAssembly extends HasTypes, Identifiable -{ -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceDeclaration.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceDeclaration.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceDeclaration.java deleted file mode 100644 index f17ad8a..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ServiceDeclaration.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.activation.Activator; -import org.apache.zest.api.common.Visibility; - -/** - * Fluent API for declaring services hosted in Polygene. Instances - * of this API are acquired by calling {@link ModuleAssembly#services(Class[])}. - */ -public interface ServiceDeclaration -{ - ServiceDeclaration setMetaInfo( Object serviceAttribute ); - - ServiceDeclaration visibleIn( Visibility visibility ); - - ServiceDeclaration withConcerns( Class<?>... concerns ); - - ServiceDeclaration withSideEffects( Class<?>... sideEffects ); - - ServiceDeclaration withMixins( Class<?>... mixins ); - - ServiceDeclaration withTypes( Class<?>... types ); - - ServiceDeclaration identifiedBy( String identity ); - - ServiceDeclaration taggedWith( String... tags ); - - ServiceDeclaration instantiateOnStartup(); - - /** - * Set the service activators. Activators are executed in order around the - * ServiceReference activation and passivation. - * - * @param activators the service activators - * @return the assembly - */ - @SuppressWarnings( { "unchecked","varargs" } ) - ServiceDeclaration withActivators( Class<? extends Activator<?>>... activators ); -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/SingletonAssembler.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/SingletonAssembler.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/SingletonAssembler.java deleted file mode 100644 index 5d6117b..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/SingletonAssembler.java +++ /dev/null @@ -1,129 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.PolygeneAPI; -import org.apache.zest.api.activation.ActivationException; -import org.apache.zest.api.composite.TransientBuilderFactory; -import org.apache.zest.api.object.ObjectFactory; -import org.apache.zest.api.service.ServiceFinder; -import org.apache.zest.api.structure.Application; -import org.apache.zest.api.structure.Module; -import org.apache.zest.api.unitofwork.UnitOfWorkFactory; -import org.apache.zest.api.value.ValueBuilderFactory; - -/** - * Base class for Assembler that creates an Application - * with one Layer and one Module. Create a subclass of this - * and implement the {@link Assembler#assemble(ModuleAssembly)} method. - * Once the SingletonAssembler is instantiated it will have created and activated - * an Application which can be accessed from {@link org.apache.zest.bootstrap.SingletonAssembler#application()}. - * You can also easily access any resources specific for the single Module, such as the TransientBuilderFactory. - */ -public abstract class SingletonAssembler - implements Assembler -{ - private Energy4Java zest; - private Application applicationInstance; - private final Module moduleInstance; - - /** - * Creates a Polygene Runtime instance containing one Layer with one Module. - * The Layer will be named "Layer 1" and the Module will be named "Module 1". It is possible to add - * additional layers and modules via the Assembler interface that must be implemented in the subclass of this - * class. - * - * @throws AssemblyException Either if the model can not be created from the disk, or some inconsistency in - * the programming model makes it impossible to create it. - * @throws ActivationException If the automatic {@code activate()} method is throwing this Exception.. - */ - public SingletonAssembler() - throws AssemblyException, ActivationException - { -// START SNIPPET: actual - zest = new Energy4Java(); - applicationInstance = zest.newApplication( - applicationFactory -> applicationFactory.newApplicationAssembly( SingletonAssembler.this ) - ); - - try - { - beforeActivation( applicationInstance ); - applicationInstance.activate(); - } - catch( Exception e ) - { - if( e instanceof ActivationException ) - { - throw ( (ActivationException) e ); - } - throw new ActivationException( "Could not activate application", e ); - } -// START SNIPPET: actual - - moduleInstance = applicationInstance.findModule( "Layer 1", "Module 1" ); - } - - public final PolygeneAPI runtime() - { - return zest.spi(); - } - - public final Application application() - { - return applicationInstance; - } - - public final Module module() - { - return moduleInstance; - } - - protected void beforeActivation( Application application ) - throws Exception - { - } - - protected UnitOfWorkFactory unitOfWorkFactory() - { - return moduleInstance.unitOfWorkFactory(); - } - - protected ServiceFinder serviceFinder() - { - return moduleInstance.serviceFinder(); - } - - protected ValueBuilderFactory valueBuilderFactory() - { - return moduleInstance.valueBuilderFactory(); - } - - protected TransientBuilderFactory transientBuilderFactory() - { - return moduleInstance.transientBuilderFactory(); - } - - protected ObjectFactory objectFactory() - { - return moduleInstance.objectFactory(); - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/StateDeclarations.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/StateDeclarations.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/StateDeclarations.java deleted file mode 100644 index 55ed93d..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/StateDeclarations.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import java.lang.reflect.AccessibleObject; -import org.apache.zest.api.common.MetaInfo; - -/** - * This provides declared {@link org.apache.zest.api.property.Property} information that the runtime can use. - */ -public interface StateDeclarations -{ - MetaInfo metaInfoFor( AccessibleObject accessor ); - - Object initialValueOf( AccessibleObject accessor ); - - boolean useDefaults( AccessibleObject accessor ); -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientAssembly.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientAssembly.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientAssembly.java deleted file mode 100644 index dac0396..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientAssembly.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.type.HasTypes; - -/** - * This represents the assembly information of a single TransientComposite in a Module. - */ -public interface TransientAssembly - extends HasTypes -{ -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientDeclaration.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientDeclaration.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientDeclaration.java deleted file mode 100644 index 6e9436b..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/TransientDeclaration.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.common.Visibility; - -/** - * Fluent API for declaring TransientComposites. Instances - * of this API are acquired by calling {@link ModuleAssembly#transients(Class[])}. - */ -public interface TransientDeclaration -{ - TransientDeclaration setMetaInfo( Object info ); - - TransientDeclaration visibleIn( Visibility visibility ); - - TransientDeclaration withConcerns( Class<?>... concerns ); - - TransientDeclaration withSideEffects( Class<?>... sideEffects ); - - TransientDeclaration withMixins( Class<?>... mixins ); - - TransientDeclaration withTypes( Class<?>... roles ); -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueAssembly.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueAssembly.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueAssembly.java deleted file mode 100644 index 8a892cd..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueAssembly.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.type.HasTypes; - -/** - * This represents the assembly information of a single ValueComposite in a Module. - */ -public interface ValueAssembly - extends HasTypes -{ -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueDeclaration.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueDeclaration.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueDeclaration.java deleted file mode 100644 index 51c0116..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ValueDeclaration.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.common.Visibility; - -/** - * Fluent API for declaring values - */ -public interface ValueDeclaration -{ - ValueDeclaration setMetaInfo( Object info ); - - ValueDeclaration visibleIn( Visibility visibility ); - - ValueDeclaration withConcerns( Class<?>... concerns ); - - ValueDeclaration withSideEffects( Class<?>... sideEffects ); - - ValueDeclaration withMixins( Class<?>... mixins ); - - ValueDeclaration withTypes( Class<?>... roles ); -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ZestRuntime.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ZestRuntime.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ZestRuntime.java deleted file mode 100644 index 72d83c7..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/ZestRuntime.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap; - -import org.apache.zest.api.PolygeneAPI; -import org.apache.zest.spi.PolygeneSPI; - -/** - * This interface has to be implemented by Polygene runtimes. - */ -public interface PolygeneRuntime -{ - ApplicationAssemblyFactory applicationAssemblyFactory(); - - ApplicationModelFactory applicationModelFactory(); - - PolygeneAPI api(); - - PolygeneSPI spi(); -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ApplicationBuilder.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ApplicationBuilder.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ApplicationBuilder.java deleted file mode 100644 index 7c53bea..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ApplicationBuilder.java +++ /dev/null @@ -1,303 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.builder; - -import java.io.InputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Scanner; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; -import org.apache.zest.api.activation.ActivationEventListener; -import org.apache.zest.api.activation.ActivationEventListenerRegistration; -import org.apache.zest.api.activation.ActivationException; -import org.apache.zest.api.activation.ApplicationPassivationThread; -import org.apache.zest.api.structure.Application; -import org.apache.zest.api.structure.ApplicationDescriptor; -import org.apache.zest.bootstrap.ApplicationAssembler; -import org.apache.zest.bootstrap.ApplicationAssembly; -import org.apache.zest.bootstrap.ApplicationAssemblyFactory; -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.Energy4Java; -import org.apache.zest.bootstrap.LayerAssembly; - -/** - * Application Builder. - */ -public class ApplicationBuilder - implements ActivationEventListenerRegistration -{ - private final String applicationName; - private String applicationVersion; - private Application.Mode applicationMode; - private final List<Object> metaInfos = new ArrayList<>(); - private boolean passivationShutdownHook; - private final Map<String, LayerDeclaration> layers = new HashMap<>(); - private final List<ActivationEventListener> activationListeners = new ArrayList<>(); - - public ApplicationBuilder( String applicationName ) - { - this.applicationName = applicationName; - } - - public ApplicationBuilder version( String version ) - { - applicationVersion = version; - return this; - } - - public ApplicationBuilder mode( Application.Mode mode ) - { - applicationMode = mode; - return this; - } - - public ApplicationBuilder metaInfo( Object... metaInfos ) - { - for( Object metaInfo : metaInfos ) - { - this.metaInfos.add( metaInfo ); - } - return this; - } - - /** - * Register a JVM shutdown hook that passivate the Application. - * - * The hook is registered after activating the Application and before {@link #afterActivation()}. - * - * @return This builder - */ - public ApplicationBuilder withPassivationShutdownHook() - { - this.passivationShutdownHook = true; - return this; - } - - /** - * Create and activate a new Application. - * @return Activated Application - * @throws AssemblyException if the assembly failed - * @throws ActivationException if the activation failed - */ - public Application newApplication() - throws AssemblyException, ActivationException - { - Energy4Java zest = new Energy4Java(); - ApplicationDescriptor model = zest.newApplicationModel( new ApplicationAssembler() - { - @Override - public ApplicationAssembly assemble( ApplicationAssemblyFactory factory ) - throws AssemblyException - { - ApplicationAssembly assembly = factory.newApplicationAssembly(); - assembly.setName( applicationName ); - if( applicationVersion != null ) - { - assembly.setVersion( applicationVersion ); - } - if( applicationMode != null ) - { - assembly.setMode( applicationMode ); - } - for( Object metaInfo : metaInfos ) - { - assembly.setMetaInfo( metaInfo ); - } - HashMap<String, LayerAssembly> createdLayers = new HashMap<>(); - for( Map.Entry<String, LayerDeclaration> entry : layers.entrySet() ) - { - LayerAssembly layer = entry.getValue().createLayer( assembly ); - createdLayers.put( entry.getKey(), layer ); - } - for( LayerDeclaration layer : layers.values() ) - { - layer.initialize( createdLayers ); - } - return assembly; - } - } ); - Application application = model.newInstance( zest.api() ); - for( ActivationEventListener activationListener : activationListeners ) - { - application.registerActivationEventListener( activationListener ); - } - beforeActivation(); - application.activate(); - if( passivationShutdownHook ) - { - Runtime.getRuntime().addShutdownHook( new ApplicationPassivationThread( application ) ); - } - afterActivation(); - return application; - } - - /** - * Called before application activation. - */ - protected void beforeActivation() - { - } - - /** - * Called after application activation. - */ - protected void afterActivation() - { - } - - @Override - public void registerActivationEventListener( ActivationEventListener listener ) - { - activationListeners.add( listener ); - } - - @Override - public void deregisterActivationEventListener( ActivationEventListener listener ) - { - activationListeners.remove( listener ); - } - - /** - * Declare Layer. - * @param layerName Name of the Layer - * @return Layer declaration for the given name, new if did not already exists - */ - public LayerDeclaration withLayer( String layerName ) - { - LayerDeclaration layerDeclaration = layers.get( layerName ); - if( layerDeclaration != null ) - { - return layerDeclaration; - } - layerDeclaration = new LayerDeclaration( layerName ); - layers.put( layerName, layerDeclaration ); - return layerDeclaration; - } - - /** - * Load an ApplicationBuilder from a JSON String. - * @param json JSON String - * @return Application Builder loaded from JSON - * @throws JSONException if unable to read JSON - * @throws AssemblyException if unable to declare the assembly - */ - public static ApplicationBuilder fromJson( String json ) - throws JSONException, AssemblyException - { - JSONObject root = new JSONObject( json ); - return fromJson( root ); - } - - /** - * Load an ApplicationBuilder from a JSON InputStream. - * @param json JSON input - * @return Application Builder loaded from JSON - * @throws JSONException if unable to read JSON - * @throws AssemblyException if unable to declare the assembly - */ - public static ApplicationBuilder fromJson( InputStream json ) - throws JSONException, AssemblyException - { - String jsonString = new Scanner( json, "UTF-8" ).useDelimiter( "\\A" ).next(); - return fromJson( jsonString ); - } - - /** - * Load an ApplicationBuilder from a JSONObject. - * @param root JSON object - * @return Application Builder loaded from JSON - * @throws JSONException if unable to read JSON - * @throws AssemblyException if unable to declare the assembly - */ - public static ApplicationBuilder fromJson( JSONObject root ) - throws JSONException, AssemblyException - { - String applicationName = root.getString( "name" ); - ApplicationBuilder builder = new ApplicationBuilder( applicationName ); - builder.configureWithJson( root ); - return builder; - } - - /** Configures the application struucture from a JSON document. - * - * @param root The JSON document root. - * @throws JSONException if the JSON document isn't valid. - * @throws AssemblyException if probelms in the Assemblers provided in the JSON document. - */ - protected void configureWithJson( JSONObject root ) - throws JSONException, AssemblyException - { - JSONArray layers = root.optJSONArray( "layers" ); - if( layers != null ) - { - for( int i = 0; i < layers.length(); i++ ) - { - JSONObject layerObject = layers.getJSONObject( i ); - String layerName = layerObject.getString( "name" ); - LayerDeclaration layerDeclaration = withLayer( layerName ); - JSONArray using = layerObject.optJSONArray( "uses" ); - if( using != null ) - { - for( int j = 0; j < using.length(); j++ ) - { - layerDeclaration.using( using.getString( j ) ); - } - } - JSONArray modules = layerObject.optJSONArray( "modules" ); - if( modules != null ) - { - for( int k = 0; k < modules.length(); k++ ) - { - JSONObject moduleObject = modules.getJSONObject( k ); - String moduleName = moduleObject.getString( "name" ); - ModuleDeclaration moduleDeclaration = layerDeclaration.withModule( moduleName ); - JSONArray assemblers = moduleObject.optJSONArray( "assemblers" ); - if( assemblers != null ) - { - for( int m = 0; m < assemblers.length(); m++ ) - { - String string = assemblers.getString( m ); - moduleDeclaration.withAssembler( string ); - } - } - } - } - } - } - } - - /** - * {@literal main} method that read JSON from STDIN. - * <p>Passivation exceptions are written to STDERR if any.</p> - * @param args Unused - * @throws JSONException if unable to read JSON - * @throws AssemblyException if the assembly failed - * @throws ActivationException if the activation failed - */ - public static void main( String[] args ) - throws JSONException, ActivationException, AssemblyException - { - fromJson( System.in ).withPassivationShutdownHook().newApplication(); - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/LayerDeclaration.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/LayerDeclaration.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/LayerDeclaration.java deleted file mode 100644 index 710743e..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/LayerDeclaration.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.builder; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.stream.StreamSupport; -import org.apache.zest.bootstrap.ApplicationAssembly; -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.LayerAssembly; -import org.apache.zest.bootstrap.ModuleAssembly; - -/** - * Provides declared {@link org.apache.zest.api.structure.Layer} information that the {@link ApplicationBuilder} can use. - */ -public class LayerDeclaration -{ - private final String layerName; - private final List<String> using = new ArrayList<>(); - private final Map<String, ModuleDeclaration> modules = new HashMap<>(); - private LayerAssembly layer; - - LayerDeclaration( String layerName ) - { - this.layerName = layerName; - } - - /** - * Declare using layer. - * @param layerName Used layer name - * @return This Layer declaration - */ - public LayerDeclaration using( String layerName ) - { - this.using.add( layerName ); - return this; - } - - /** - * Declare using layers. - * @param layerNames Used layers names - * @return This Layer declaration - */ - public LayerDeclaration using( Iterable<String> layerNames ) - { - StreamSupport.stream( layerNames.spliterator(), false ) - .forEach( using::add ); - return this; - } - - /** - * Declare Module. - * @param moduleName Name of the Module - * @return Module declaration for the given name, new if did not already exists - */ - public ModuleDeclaration withModule( String moduleName ) - { - ModuleDeclaration module = modules.get( moduleName ); - if( module != null ) - { - return module; - } - module = new ModuleDeclaration( moduleName ); - modules.put( moduleName, module ); - return module; - } - - LayerAssembly createLayer( ApplicationAssembly application ) - { - layer = application.layer( layerName ); - layer.setName( layerName ); - for( ModuleDeclaration module : modules.values() ) - { - ModuleAssembly assembly = module.createModule( layer ); - } - return layer; - } - - void initialize( HashMap<String, LayerAssembly> createdLayers ) - throws AssemblyException - { - for( String uses : using ) - { - LayerAssembly usedLayer = createdLayers.get( uses ); - layer.uses( usedLayer ); - } - for( ModuleDeclaration module : modules.values() ) - { - module.initialize(); - } - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ModuleDeclaration.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ModuleDeclaration.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ModuleDeclaration.java deleted file mode 100644 index 0a4b5fa..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/ModuleDeclaration.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.builder; - -import java.util.ArrayList; -import java.util.List; -import java.util.stream.StreamSupport; -import org.apache.zest.bootstrap.Assembler; -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.LayerAssembly; -import org.apache.zest.bootstrap.ModuleAssembly; - -import static java.util.stream.Collectors.toList; -import static org.apache.zest.api.util.Classes.isAssignableFrom; - -/** - * Provides declared {@link org.apache.zest.api.structure.Module} information that the {@link ApplicationBuilder} can use. - */ -public class ModuleDeclaration -{ - private final String moduleName; - private final List<Assembler> assemblers = new ArrayList<>(); - private ModuleAssembly module; - - public ModuleDeclaration( String moduleName ) - { - this.moduleName = moduleName; - } - - /** - * Declare Assembler. - * @param assembler Assembler instance - * @return This Module declaration - */ - public ModuleDeclaration withAssembler( Assembler assembler ) - { - assemblers.add( assembler ); - return this; - } - - /** - * Declare Assembler. - * @param classname Assembler class name - * @return This Module declaration - * @throws AssemblyException if unable to load class, not an Assembler or unable to instanciate - */ - public ModuleDeclaration withAssembler( String classname ) - throws AssemblyException - { - Class<? extends Assembler> clazz = loadClass( classname ); - return withAssembler( clazz ); - } - - /** - * Declare Assembler. - * @param assemblerClass Assembler class - * @return This Module declaration - * @throws AssemblyException not an Assembler or if unable to instanciate - */ - public ModuleDeclaration withAssembler( Class<?> assemblerClass ) - throws AssemblyException - { - Assembler assembler = createAssemblerInstance( assemblerClass ); - assemblers.add( assembler ); - return this; - } - - /** - * Declare Assemblers. - * <p>Declare several Assemblers from an Iterable of Class objects.</p> - * <p>Typically used along {@link org.apache.zest.bootstrap.ClassScanner}.</p> - * @param assemblerClasses Assembler classes - * @return This Module declaration - * @throws AssemblyException if one of the Class is not an Assembler or unable to instantiate - */ - public ModuleDeclaration withAssemblers( Iterable<Class<?>> assemblerClasses ) - throws AssemblyException - { - List<Class<?>> notAssemblers = StreamSupport.stream( assemblerClasses.spliterator(), false ) - .filter( isAssignableFrom( Assembler.class ).negate() ) - .collect( toList() ); - if( !notAssemblers.isEmpty() ) - { - throw new AssemblyException( - "Classes " + notAssemblers + " are not implementing " + Assembler.class.getName() - ); - } - for( Class<?> assemblerClass : assemblerClasses ) - { - withAssembler( assemblerClass ); - } - return this; - } - - ModuleAssembly createModule( LayerAssembly layer ) - { - module = layer.module( moduleName ); - return module; - } - - void initialize() - throws AssemblyException - { - for( Assembler assembler : assemblers ) - { - assembler.assemble( module ); - } - } - - @SuppressWarnings( "unchecked" ) - private Class<? extends Assembler> loadClass( String classname ) - throws AssemblyException - { - Class<?> clazz; - try - { - clazz = getClass().getClassLoader().loadClass( classname ); - } - catch( Exception e ) - { - throw new AssemblyException( "Unable to load class " + classname, e ); - } - if( !Assembler.class.isAssignableFrom( clazz ) ) - { - throw new AssemblyException( - "Class " + classname + " is not implementing " + Assembler.class.getName() - ); - } - //noinspection unchecked - return (Class<? extends Assembler>) clazz; - } - - private Assembler createAssemblerInstance( Class<?> assemblerClass ) - throws AssemblyException - { - if( !Assembler.class.isAssignableFrom( assemblerClass ) ) - { - throw new AssemblyException( - "Class " + assemblerClass + " is not implementing " + Assembler.class.getName() - ); - } - try - { - return (Assembler) assemblerClass.newInstance(); - } - catch( Exception e ) - { - throw new AssemblyException( "Unable to instantiate " + assemblerClass, e ); - } - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/package.html ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/package.html b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/package.html deleted file mode 100644 index 6c1ff92..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/builder/package.html +++ /dev/null @@ -1,28 +0,0 @@ -<!-- - ~ 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. - ~ - ~ - --> -<html> - <body> - <h2>Application Builder.</h2> - <p> - Generic ApplicationBuilder, which simplifies the creation of Application Structure, either by a fluid DSL - or from a JSON file. - </p> - </body> -</html> http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/identity/DefaultIdentityGeneratorAssembler.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/identity/DefaultIdentityGeneratorAssembler.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/identity/DefaultIdentityGeneratorAssembler.java deleted file mode 100644 index 94b9f3b..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/identity/DefaultIdentityGeneratorAssembler.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.identity; - -import org.apache.zest.api.identity.IdentityGenerator; -import org.apache.zest.api.identity.UuidGeneratorMixin; -import org.apache.zest.bootstrap.Assembler; -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.ModuleAssembly; - -public class DefaultIdentityGeneratorAssembler - implements Assembler -{ - - @Override - public void assemble(ModuleAssembly module) - throws AssemblyException - { - module.services(IdentityGenerator.class).withMixins(UuidGeneratorMixin.class); - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/IllegalLayerAssemblerException.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/IllegalLayerAssemblerException.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/IllegalLayerAssemblerException.java deleted file mode 100644 index 0b62ae0..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/IllegalLayerAssemblerException.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.layered; - -import org.apache.zest.bootstrap.AssemblyException; - -public class IllegalLayerAssemblerException extends AssemblyException -{ - public IllegalLayerAssemblerException( String message ) - { - super( message ); - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayerAssembler.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayerAssembler.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayerAssembler.java deleted file mode 100644 index b6b0dd0..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayerAssembler.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.layered; - -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.LayerAssembly; - -public interface LayerAssembler -{ - LayerAssembly assemble( LayerAssembly layer ) - throws AssemblyException; -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredApplicationAssembler.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredApplicationAssembler.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredApplicationAssembler.java deleted file mode 100644 index 809b01e..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredApplicationAssembler.java +++ /dev/null @@ -1,297 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.layered; - -import java.lang.reflect.Constructor; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.util.HashMap; -import org.apache.zest.api.activation.ActivationException; -import org.apache.zest.api.activation.PassivationException; -import org.apache.zest.api.structure.Application; -import org.apache.zest.api.structure.ApplicationDescriptor; -import org.apache.zest.bootstrap.ApplicationAssembler; -import org.apache.zest.bootstrap.ApplicationAssembly; -import org.apache.zest.bootstrap.ApplicationAssemblyFactory; -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.Energy4Java; -import org.apache.zest.bootstrap.LayerAssembly; - -public abstract class LayeredApplicationAssembler - implements ApplicationAssembler -{ - protected final Energy4Java zest; - protected final String name; - protected final String version; - - private final Application.Mode mode; - private final HashMap<Class<? extends LayerAssembler>, LayerAssembler> assemblers = new HashMap<>(); - - private ApplicationAssembly assembly; - protected ApplicationDescriptor model; - protected Application application; - - public LayeredApplicationAssembler( String name, String version, Application.Mode mode ) - throws AssemblyException - { - this.name = name; - this.version = version; - this.mode = mode; - zest = new Energy4Java(); - } - - public void initialize() - throws AssemblyException - { - model = zest.newApplicationModel( this ); - onModelCreated( model ); - instantiateApplication( zest, model ); - } - - public ApplicationAssembly assembly() - { - return assembly; - } - - /** - * This method is called from the <code>initialize</code> method to instantiate the Polygene application from the - * application model. - * - * <p> - * The default implementation simply calls; - * </p> - * <pre><code> - * application = model.newInstance( zest.spi() ); - * </code></pre> - * - * @param zest The Polygene runtime engine. - * @param model The application model descriptor. - */ - protected void instantiateApplication( Energy4Java zest, ApplicationDescriptor model ) - { - application = model.newInstance( zest.spi() ); - } - - /** - * This method is called after the Application Model has been created, before the instantiation of the Polygene - * application. - * - * <p> - * The default implementation does nothing. Applications may have advanced features to inspect or - * modify the model prior to instantiation, and this is the place where such advanced manipulation is - * expected to take place. - * </p> - * - * @param model The model that has just been created. - */ - protected void onModelCreated( ApplicationDescriptor model ) - { - } - - public ApplicationDescriptor model() - { - return model; - } - - public Application application() - { - return application; - } - - public void start() - throws ActivationException - { - application.activate(); - } - - public void stop() - throws PassivationException - { - application.passivate(); - } - - @Override - public ApplicationAssembly assemble( ApplicationAssemblyFactory applicationFactory ) - throws AssemblyException - { - assembly = applicationFactory.newApplicationAssembly(); - assembly.setName( name ); - assembly.setVersion( version ); - assembly.setMode( mode ); - assembleLayers( assembly ); - return assembly; - } - - protected LayerAssembly createLayer( Class<? extends LayerAssembler> layerAssemblerClass ) - throws IllegalArgumentException - { - try - { - String classname = layerAssemblerClass.getSimpleName(); - if( classname.endsWith( "Layer" ) ) - { - classname = classname.substring( 0, classname.length() - 5 ) + " Layer"; - } - setNameIfPresent( layerAssemblerClass, classname ); - LayerAssembly layer = assembly.layer( classname ); - - LayerAssembler layerAssembler = instantiateLayerAssembler( layerAssemblerClass, layer ); - assemblers.put( layerAssemblerClass, layerAssembler ); - assembleLayer( layerAssembler, layer ); - return layer; - } - catch( Exception e ) - { - throw new IllegalArgumentException( "Unable to instantiate layer with " + layerAssemblerClass.getSimpleName(), e ); - } - } - - protected void assembleLayer( LayerAssembler layerAssembler, LayerAssembly layer ) - throws AssemblyException - { - layerAssembler.assemble( layer ); - } - - protected <T extends LayerAssembler> LayerAssembler instantiateLayerAssembler( Class<T> layerAssemblerClass, - LayerAssembly layer - ) - throws InstantiationException, IllegalAccessException, InvocationTargetException, IllegalLayerAssemblerException - { - LayerAssembler assembler = createWithFactoryMethod( layerAssemblerClass, layer ); - if( assembler != null ) - { - return assembler; - } - assembler = createWithConstructor( layerAssemblerClass, layer ); - if( assembler != null ) - { - return assembler; - } - throw new IllegalLayerAssemblerException( "No matching factory method nor constructor found in " + layerAssemblerClass ); - } - - private LayerAssembler createWithFactoryMethod( Class<? extends LayerAssembler> layerAssemblerClass, - LayerAssembly layer - ) - throws InvocationTargetException, IllegalAccessException - { - try - { - Method factoryMethod = layerAssemblerClass.getDeclaredMethod( "create", LayerAssembly.class ); - factoryMethod.setAccessible( true ); - int modifiers = factoryMethod.getModifiers(); - if( Modifier.isStatic( modifiers ) && LayerAssembler.class.isAssignableFrom( factoryMethod.getReturnType() ) ) - { - return (LayerAssembler) factoryMethod.invoke( null, layer ); - } - } - catch( NoSuchMethodException e ) - { - try - { - Method factoryMethod = layerAssemblerClass.getDeclaredMethod( "create" ); - factoryMethod.setAccessible( true ); - int modifiers = factoryMethod.getModifiers(); - if( Modifier.isStatic( modifiers ) && LayerAssembler.class.isAssignableFrom( factoryMethod.getReturnType() ) ) - { - return (LayerAssembler) factoryMethod.invoke( null ); - } - } - catch( NoSuchMethodException e1 ) - { - } - } - return null; - } - - private LayerAssembler createWithConstructor( Class<? extends LayerAssembler> layerAssemblerClass, - LayerAssembly assembly - ) - throws IllegalAccessException, InvocationTargetException, InstantiationException - { - try - { - Constructor<? extends LayerAssembler> constructor = layerAssemblerClass.getConstructor( LayerAssembly.class ); - if( constructor != null ) - { - constructor.setAccessible( true ); - return constructor.newInstance( assembly ); - } - } - catch( NoSuchMethodException e ) - { - try - { - Constructor<? extends LayerAssembler> constructor = layerAssemblerClass.getDeclaredConstructor(); - if( constructor != null ) - { - constructor.setAccessible( true ); - System.out.println(constructor); - return constructor.newInstance(); - } - } - catch( NoSuchMethodException e1 ) - { - return null; - } - } - return null; - } - - static void setNameIfPresent( Class<?> clazz, String classname ) - throws IllegalAccessException - { - try - { - Field field = clazz.getDeclaredField( "NAME" ); - if( Modifier.isStatic( field.getModifiers() ) ) - { - field.setAccessible( true ); - field.set( null, classname ); - } - } - catch( Exception e ) - { - // Ignore and consider normal. - } - } - - @SuppressWarnings( "unchecked" ) - protected <T extends LayerAssembler> T assemblerOf( Class<T> layerAssemblerClass ) - { - return (T) assemblers.get( layerAssemblerClass ); - } - - /** - * Called from the <code>assemble</code> method to assemble the layers in the application. - * - * <p> - * This method must be implemented, and is typically a list of LayerAssembler instantiations, followed - * by {@link LayerAssembly#uses(LayerAssembly...)} declarations. - * </p> - * - * @param assembly Application assembly - * @throws AssemblyException on invalid assembly - */ - protected abstract void assembleLayers( ApplicationAssembly assembly ) - throws AssemblyException; -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredLayerAssembler.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredLayerAssembler.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredLayerAssembler.java deleted file mode 100644 index 62f8bc7..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/LayeredLayerAssembler.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.layered; - -import java.lang.reflect.Constructor; -import java.util.HashMap; -import org.apache.zest.bootstrap.LayerAssembly; -import org.apache.zest.bootstrap.ModuleAssembly; - -public abstract class LayeredLayerAssembler - implements LayerAssembler -{ - private HashMap<Class<? extends ModuleAssembler>, ModuleAssembler> assemblers = new HashMap<>(); - - protected ModuleAssembly createModule( LayerAssembly layer, Class<? extends ModuleAssembler> moduleAssemblerClass ) - { - try - { - ModuleAssembler moduleAssembler = instantiateAssembler( layer, moduleAssemblerClass ); - String moduleName = createModuleName( moduleAssemblerClass ); - LayeredApplicationAssembler.setNameIfPresent( moduleAssemblerClass, moduleName ); - ModuleAssembly module = layer.module( moduleName ); - assemblers.put( moduleAssemblerClass, moduleAssembler ); - ModuleAssembly assembly = moduleAssembler.assemble( layer, module ); - if( assembly == null ) - { - return module; - } - return assembly; - } - catch( Exception e ) - { - throw new IllegalArgumentException( "Unable to instantiate module with " + moduleAssemblerClass.getSimpleName(), e ); - } - } - - protected String createModuleName( Class<? extends ModuleAssembler> modulerAssemblerClass ) - { - String moduleName = modulerAssemblerClass.getSimpleName(); - if( moduleName.endsWith( "Module" ) ) - { - moduleName = moduleName.substring( 0, moduleName.length() - 6 ) + " Module"; - } - return moduleName; - } - - protected ModuleAssembler instantiateAssembler( LayerAssembly layer, - Class<? extends ModuleAssembler> modulerAssemblerClass - ) - throws InstantiationException, IllegalAccessException, java.lang.reflect.InvocationTargetException, NoSuchMethodException - { - ModuleAssembler moduleAssembler; - try - { - Constructor<? extends ModuleAssembler> assemblyConstructor = modulerAssemblerClass.getDeclaredConstructor( ModuleAssembly.class ); - assemblyConstructor.setAccessible( true ); - moduleAssembler = assemblyConstructor.newInstance( layer ); - } - catch( NoSuchMethodException e ) - { - Constructor<? extends ModuleAssembler> assemblyConstructor = modulerAssemblerClass.getDeclaredConstructor(); - assemblyConstructor.setAccessible( true ); - moduleAssembler = assemblyConstructor.newInstance(); - } - return moduleAssembler; - } - - @SuppressWarnings( "unchecked" ) - protected <T extends ModuleAssembler> T assemblerOf( Class<T> moduleAssemblerType ) - { - return (T) assemblers.get( moduleAssemblerType ); - } -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/ModuleAssembler.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/ModuleAssembler.java b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/ModuleAssembler.java deleted file mode 100644 index 1b416c8..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/ModuleAssembler.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 org.apache.zest.bootstrap.layered; - -import org.apache.zest.bootstrap.AssemblyException; -import org.apache.zest.bootstrap.LayerAssembly; -import org.apache.zest.bootstrap.ModuleAssembly; - -public interface ModuleAssembler -{ - ModuleAssembly assemble( LayerAssembly layer, ModuleAssembly module ) - throws AssemblyException; -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/1c722f44/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/package.html ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/package.html b/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/package.html deleted file mode 100644 index 0b8300b..0000000 --- a/core/bootstrap/src/main/java/org/apache/zest/bootstrap/layered/package.html +++ /dev/null @@ -1,24 +0,0 @@ -<!-- - ~ 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. - ~ - ~ - --> -<html> - <body> - <h2>Layered Assembly.</h2> - </body> -</html>
