Added:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImplementationImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImplementationImpl.java?rev=393677&view=auto
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImplementationImpl.java
(added)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImplementationImpl.java
Wed Apr 12 18:03:55 2006
@@ -0,0 +1,72 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as
applicable.
+ *
+ * Licensed 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.tuscany.model.assembly.impl;
+
+import org.apache.tuscany.model.assembly.AssemblyContext;
+import org.apache.tuscany.model.assembly.AssemblyVisitor;
+import org.apache.tuscany.model.assembly.ComponentInfo;
+import org.apache.tuscany.model.assembly.Implementation;
+
+/**
+ * An implementation of Implementation.
+ */
+public abstract class ImplementationImpl extends ExtensibleImpl implements
Implementation {
+
+ private ComponentInfo componentInfo;
+
+ public ComponentInfo getComponentInfo() {
+ return componentInfo;
+ }
+
+ public void setComponentInfo(ComponentInfo componentType) {
+ checkNotFrozen();
+ this.componentInfo=componentType;
+ }
+
+ public void initialize(AssemblyContext modelContext) {
+ if (isInitialized())
+ return;
+ super.initialize(modelContext);
+
+ // Initialize the component info
+ if (componentInfo!=null) {
+ componentInfo.initialize(modelContext);
+ }
+
+ }
+
+ public void freeze() {
+ if (isFrozen())
+ return;
+ super.freeze();
+
+ if (componentInfo!=null)
+ componentInfo.freeze();
+ }
+
+ public boolean accept(AssemblyVisitor visitor) {
+ if (!super.accept(visitor))
+ return false;
+
+ if (componentInfo!=null) {
+ if (!componentInfo.accept(visitor))
+ return false;
+ }
+ return true;
+ }
+
+}
Propchange:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImplementationImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImplementationImpl.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImportWSDLImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImportWSDLImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImportWSDLImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ImportWSDLImpl.java
Wed Apr 12 18:03:55 2006
@@ -16,8 +16,12 @@
*/
package org.apache.tuscany.model.assembly.impl;
+import java.net.URL;
+
import javax.wsdl.Definition;
+import org.apache.tuscany.common.resource.ResourceLoader;
+import org.apache.tuscany.model.assembly.AssemblyContext;
import org.apache.tuscany.model.assembly.ImportWSDL;
/**
@@ -25,14 +29,11 @@
*
* @version $Rev$ $Date$
*/
-public class ImportWSDLImpl extends AssemblyModelObjectImpl implements
ImportWSDL {
+public class ImportWSDLImpl extends AssemblyObjectImpl implements ImportWSDL {
private String location;
private String namespace;
private Definition definition;
- /**
- * Hide default constructor.
- */
protected ImportWSDLImpl() {
}
@@ -59,6 +60,23 @@
}
public void setDefinition(Definition definition) {
+ checkNotFrozen();
this.definition = definition;
}
+
+ public void initialize(AssemblyContext modelContext) {
+ if (isInitialized())
+ return;
+ super.initialize(modelContext);
+
+ // Load the WSDL definition if necessary
+ ResourceLoader resourceLoader =
modelContext.getApplicationResourceLoader();
+ if (definition == null) {
+ URL url = resourceLoader.getResource(location);
+ if (url == null)
+ throw new IllegalArgumentException("Cannot find " + location);
+ definition =
modelContext.getAssemblyLoader().loadDefinition(url.toString());
+ }
+ }
+
}
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleComponentImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleComponentImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleComponentImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleComponentImpl.java
Wed Apr 12 18:03:55 2006
@@ -22,41 +22,17 @@
/**
* An implementation of ModuleComponent.
*/
-public class ModuleComponentImpl extends ComponentImpl implements
ModuleComponent {
+public class ModuleComponentImpl extends ComponentImpl<Module> implements
ModuleComponent {
private String uri;
- /**
- * Constructor
- */
protected ModuleComponentImpl() {
}
- /**
- * @see
org.apache.tuscany.model.assembly.ModuleComponent#setModuleImplementation(org.apache.tuscany.model.assembly.Module)
- */
- public void setModuleImplementation(Module module) {
- checkNotFrozen();
- super.setComponentImplementation(module);
- }
-
- /**
- * @see
org.apache.tuscany.model.assembly.ModuleComponent#getModuleImplementation()
- */
- public Module getModuleImplementation() {
- return (Module)super.getComponentImplementation();
- }
-
- /**
- * @see org.apache.tuscany.model.assembly.ModuleComponent#getURI()
- */
public String getURI() {
return uri;
}
- /**
- * @see
org.apache.tuscany.model.assembly.ModuleComponent#setURI(java.lang.String)
- */
public void setURI(String value) {
checkNotFrozen();
uri=value;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleFragmentImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleFragmentImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleFragmentImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleFragmentImpl.java
Wed Apr 12 18:03:55 2006
@@ -21,11 +21,8 @@
/**
* An implementation of ModuleFragment.
*/
-public class ModuleFragmentImpl extends AggregateImpl implements
ModuleFragment {
+public class ModuleFragmentImpl extends CompositeImpl implements
ModuleFragment {
- /**
- * Constructor
- */
protected ModuleFragmentImpl() {
}
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ModuleImpl.java
Wed Apr 12 18:03:55 2006
@@ -16,89 +16,57 @@
*/
package org.apache.tuscany.model.assembly.impl;
-import java.util.ArrayList;
-import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.apache.tuscany.model.assembly.AssemblyFactory;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
-import org.apache.tuscany.model.assembly.AssemblyModelVisitor;
-import org.apache.tuscany.model.assembly.Component;
-import org.apache.tuscany.model.assembly.ComponentType;
-import org.apache.tuscany.model.assembly.ConfiguredProperty;
-import org.apache.tuscany.model.assembly.ConfiguredReference;
-import org.apache.tuscany.model.assembly.ConfiguredService;
-import org.apache.tuscany.model.assembly.EntryPoint;
-import org.apache.tuscany.model.assembly.ExternalService;
+import org.apache.tuscany.model.assembly.AssemblyContext;
+import org.apache.tuscany.model.assembly.AssemblyVisitor;
import org.apache.tuscany.model.assembly.Module;
import org.apache.tuscany.model.assembly.ModuleFragment;
-import org.apache.tuscany.model.assembly.Multiplicity;
-import org.apache.tuscany.model.assembly.OverrideOption;
-import org.apache.tuscany.model.assembly.Reference;
-import org.apache.tuscany.model.assembly.Service;
-import org.apache.tuscany.model.assembly.ServiceContract;
-import org.apache.tuscany.model.assembly.ServiceURI;
-import org.apache.tuscany.model.assembly.Wire;
+import org.apache.tuscany.model.util.NotifyingList;
/**
* An implementation of Module.
*/
-public class ModuleImpl extends AggregateImpl implements Module {
+public class ModuleImpl extends CompositeImpl implements Module {
- private List<ModuleFragment> moduleFragments = new
ArrayList<ModuleFragment>();
- private Map<String, ModuleFragment> moduleFragmentsMap;
- private ComponentType componentType;
- private Object contextFactory;
-
/**
- * Constructor
+ * A list of module fragments synchronized with a map
*/
- protected ModuleImpl() {
+ private class ModuleFragmentList<E extends ModuleFragment> extends
NotifyingList<E>{
+ protected void added(E element) {
+ moduleFragmentsMap.put(element.getName(), element);
+ }
+ protected void removed(E element) {
+ moduleFragmentsMap.remove(element.getName());
+ }
}
+ private List<ModuleFragment> moduleFragments = new
ModuleFragmentList<ModuleFragment>();
+ private Map<String, ModuleFragment> moduleFragmentsMap=new HashMap<String,
ModuleFragment>();
+
/**
- * @see
org.apache.tuscany.model.assembly.ComponentImplementation#getComponentType()
+ * Constructor
*/
- public ComponentType getComponentType() {
- return componentType;
+ protected ModuleImpl() {
}
- /**
- * @see
org.apache.tuscany.model.assembly.ComponentImplementation#setComponentType(org.apache.tuscany.model.assembly.ComponentType)
- */
- public void setComponentType(ComponentType componentType) {
- checkNotFrozen();
- this.componentType=componentType;
- }
-
- /**
- * @see org.apache.tuscany.model.assembly.Module#getModuleFragments()
- */
public List<ModuleFragment> getModuleFragments() {
return moduleFragments;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Module#getModuleFragment(java.lang.String)
- */
public ModuleFragment getModuleFragment(String name) {
checkInitialized();
return moduleFragmentsMap.get(name);
}
- /**
- * @see
org.apache.tuscany.model.assembly.AssemblyModelObject#initialize(org.apache.tuscany.model.assembly.AssemblyModelContext)
- */
- public void initialize(AssemblyModelContext modelContext) {
+ public void initialize(AssemblyContext modelContext) {
if (isInitialized())
return;
- // Populate map of module fragments
- moduleFragmentsMap = new HashMap<String, ModuleFragment>();
+ // Initialize module fragments
for (ModuleFragment moduleFragment : moduleFragments) {
- moduleFragmentsMap.put(moduleFragment.getName(), moduleFragment);
// Add all WSDL imports, components, entry points and external
services from the module fragments
getWSDLImports().addAll(moduleFragment.getWSDLImports());
@@ -112,149 +80,21 @@
moduleFragment.initialize(modelContext);
}
- // Initialize the aggregate
+ // Initialize the composite
super.initialize(modelContext);
-
- // Derive the component type from the entry points and external
services in the module
- // Also derive properties from the overridable properties of the
components in the module
- if (componentType==null) {
- AssemblyFactory factory = modelContext.getAssemblyFactory();
- componentType = factory.createComponentType();
- for (EntryPoint entryPoint : getEntryPoints()) {
- Service service = factory.createService();
- service.setName(entryPoint.getName());
- ServiceContract serviceContract =
entryPoint.getConfiguredService().getService().getServiceContract();
- if (serviceContract != null)
- service.setServiceContract(serviceContract);
- componentType.getServices().add(service);
-
- ConfiguredReference configuredReference =
entryPoint.getConfiguredReference();
- ServiceURI sourceURI = factory.createServiceURI(null,
entryPoint, configuredReference);
- for (String target : configuredReference.getTargets()) {
- ServiceURI targetURI =factory.createServiceURI(null,
target);
- Wire wire=factory.createWire();
- wire.setSource(sourceURI);
- wire.setTarget(targetURI);
- getWires().add(wire);
- }
- }
- for (ExternalService externalService : getExternalServices()) {
- if (externalService.getOverrideOption()==null ||
externalService.getOverrideOption()==OverrideOption.NO)
- continue;
- Reference reference = factory.createReference();
- reference.setName(externalService.getName());
- ServiceContract serviceContract =
externalService.getConfiguredService().getService().getServiceContract();
- if (serviceContract != null)
- reference.setServiceContract(serviceContract);
- componentType.getReferences().add(reference);
- }
- for (Component component : getComponents()) {
- for (ConfiguredProperty configuredProperty :
component.getConfiguredProperties()) {
- if (configuredProperty.getOverrideOption()==null ||
configuredProperty.getOverrideOption()==OverrideOption.NO)
- continue;
-
componentType.getProperties().add(configuredProperty.getProperty());
- }
-
- for (ConfiguredReference configuredReference :
component.getConfiguredReferences().values()) {
- // Create a wire
- ServiceURI sourceURI =factory.createServiceURI(null,
component, configuredReference);
- for (String target : configuredReference.getTargets()) {
- ServiceURI targetURI =factory.createServiceURI(null,
target);
- Wire wire=factory.createWire();
- wire.setSource(sourceURI);
- wire.setTarget(targetURI);
- getWires().add(wire);
- }
- }
- }
- }
- componentType.initialize(modelContext);
-
-
- // Wire the module parts
- for (Wire wire : getWires()) {
-
- // Get the source reference
- ServiceURI sourceURI=wire.getSource();
- ConfiguredReference configuredReference = null;
- String partName = sourceURI.getPartName();
- String referenceName = sourceURI.getServiceName();
- if (referenceName != null) {
- Component component = getComponent(partName);
- if (component != null) {
- configuredReference =
component.getConfiguredReference(referenceName);
- }
- } else {
- EntryPoint entryPoint = getEntryPoint(partName);
- if (entryPoint != null) {
- configuredReference = entryPoint.getConfiguredReference();
- }
- }
- if (configuredReference == null) {
- throw new IllegalArgumentException("Cannot find wire source "
+ sourceURI.getAddress());
- } else {
-
- // Resolve the target service endpoint
- ServiceURI targetURI = wire.getTarget();
- ConfiguredService configuredService =
getConfiguredService(targetURI);
- if (configuredService != null) {
-
- // Wire the reference to the target
- Multiplicity
multiplicity=configuredReference.getReference().getMultiplicity();
- if (multiplicity==Multiplicity.ZERO_N ||
multiplicity==Multiplicity.ONE_N) {
-
configuredReference.getTargetConfiguredServices().add(configuredService);
- } else {
-
configuredReference.getTargetConfiguredServices().clear();
-
configuredReference.getTargetConfiguredServices().add(configuredService);
- }
- } else {
- throw new IllegalArgumentException("Cannot find service
for " + targetURI.getAddress());
- }
- }
- }
}
- /**
- * @see org.apache.tuscany.model.assembly.AssemblyModelObject#freeze()
- */
public void freeze() {
if (isFrozen())
return;
super.freeze();
- // Freeze component type and module fragments
- if (componentType!=null)
- componentType.freeze();
- moduleFragments=Collections.unmodifiableList(moduleFragments);
- freeze(moduleFragments);
+ moduleFragments=freeze(moduleFragments);
}
- /**
- * @see
org.apache.tuscany.model.assembly.ContextFactoryHolder#getContextFactory()
- */
- public Object getContextFactory() {
- return contextFactory;
- }
-
- /**
- * @see
org.apache.tuscany.model.assembly.ContextFactoryHolder#setContextFactory(java.lang.Object)
- */
- public void setContextFactory(Object configuration) {
- checkNotFrozen();
- this.contextFactory = configuration;
- }
-
- /**
- * @see
org.apache.tuscany.model.assembly.impl.AggregateImpl#accept(org.apache.tuscany.model.assembly.AssemblyModelVisitor)
- */
- public boolean accept(AssemblyModelVisitor visitor) {
+ public boolean accept(AssemblyVisitor visitor) {
if (!super.accept(visitor))
return false;
-
- if (componentType!=null) {
- if (!componentType.accept(visitor))
- return false;
- }
if (!accept(moduleFragments, visitor))
return false;
Added:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PartImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PartImpl.java?rev=393677&view=auto
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PartImpl.java
(added)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PartImpl.java
Wed Apr 12 18:03:55 2006
@@ -0,0 +1,61 @@
+/**
+ *
+ * Copyright 2005 The Apache Software Foundation or its licensors, as
applicable.
+ *
+ * Licensed 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.tuscany.model.assembly.impl;
+
+import org.apache.tuscany.model.assembly.Composite;
+import org.apache.tuscany.model.assembly.Part;
+
+/**
+ * Implementation of Part.
+ */
+public abstract class PartImpl extends ExtensibleImpl implements Part {
+ private Composite composite;
+ private String name;
+
+ private Object contextFactory;
+
+ protected PartImpl() {
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String value) {
+ checkNotFrozen();
+ name=value;
+ }
+
+ public Composite getComposite() {
+ return composite;
+ }
+
+ public void setComposite(Composite composite) {
+ checkNotFrozen();
+ this.composite=composite;
+ }
+
+ public Object getContextFactory() {
+ return contextFactory;
+ }
+
+ public void setContextFactory(Object contextFactory) {
+ checkNotFrozen();
+ this.contextFactory=contextFactory;
+ }
+
+}
Propchange:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PartImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PartImpl.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PortImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PortImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PortImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PortImpl.java
Wed Apr 12 18:03:55 2006
@@ -16,59 +16,41 @@
*/
package org.apache.tuscany.model.assembly.impl;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
-import org.apache.tuscany.model.assembly.AssemblyModelVisitor;
+import org.apache.tuscany.model.assembly.AssemblyContext;
+import org.apache.tuscany.model.assembly.AssemblyVisitor;
import org.apache.tuscany.model.assembly.Port;
import org.apache.tuscany.model.assembly.ServiceContract;
/**
* An implementation of Port.
*/
-public abstract class PortImpl extends AssemblyModelObjectImpl implements Port
{
+public abstract class PortImpl extends AssemblyObjectImpl implements Port {
private ServiceContract serviceContract;
private String name;
- /**
- * Constructor
- */
protected PortImpl() {
}
- /**
- * @see org.apache.tuscany.model.assembly.Port#getName()
- */
public String getName() {
return name;
}
- /**
- * @see org.apache.tuscany.model.assembly.Port#setName(java.lang.String)
- */
public void setName(String value) {
checkNotFrozen();
name=value;
}
- /**
- * @see org.apache.tuscany.model.assembly.Port#getServiceContract()
- */
public ServiceContract getServiceContract() {
return serviceContract;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Port#setServiceContract(org.apache.tuscany.model.assembly.ServiceContract)
- */
public void setServiceContract(ServiceContract value) {
checkNotFrozen();
serviceContract=value;
}
- /**
- * @see
org.apache.tuscany.model.assembly.impl.AssemblyModelObjectImpl#initialize(org.apache.tuscany.model.assembly.AssemblyModelContext)
- */
- public void initialize(AssemblyModelContext modelContext) {
+ public void initialize(AssemblyContext modelContext) {
if (isInitialized())
return;
super.initialize(modelContext);
@@ -77,9 +59,6 @@
serviceContract.initialize(modelContext);
}
- /**
- * @see
org.apache.tuscany.model.assembly.impl.AssemblyModelObjectImpl#freeze()
- */
public void freeze() {
if (isFrozen())
return;
@@ -89,10 +68,7 @@
serviceContract.freeze();
}
- /**
- * @see
org.apache.tuscany.model.assembly.impl.AssemblyModelObjectImpl#accept(org.apache.tuscany.model.assembly.AssemblyModelVisitor)
- */
- public boolean accept(AssemblyModelVisitor visitor) {
+ public boolean accept(AssemblyVisitor visitor) {
if (!super.accept(visitor))
return false;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PropertyImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PropertyImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PropertyImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/PropertyImpl.java
Wed Apr 12 18:03:55 2006
@@ -29,81 +29,49 @@
private boolean required;
private Class<?> type;
- /**
- * Constructor
- */
protected PropertyImpl() {
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#getDefaultValue()
- */
public Object getDefaultValue() {
return defaultValue;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#getName()
- */
public String getName() {
return name;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#getType()
- */
public Class<?> getType() {
return type;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#isMany()
- */
public boolean isMany() {
return many;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#isRequired()
- */
public boolean isRequired() {
return required;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Property#setDefaultValue(java.lang.Object)
- */
public void setDefaultValue(Object value) {
+ checkNotFrozen();
defaultValue = value;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#setMany(boolean)
- */
public void setMany(boolean value) {
checkNotFrozen();
many = value;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Property#setName(java.lang.String)
- */
public void setName(String value) {
checkNotFrozen();
name = value;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#setRequired(boolean)
- */
public void setRequired(boolean value) {
checkNotFrozen();
required = value;
}
- /**
- * @see org.apache.tuscany.model.assembly.Property#setType(java.lang.Class)
- */
public void setType(Class<?> value) {
checkNotFrozen();
type = value;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ReferenceImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ReferenceImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ReferenceImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ReferenceImpl.java
Wed Apr 12 18:03:55 2006
@@ -26,22 +26,13 @@
private Multiplicity multiplicity;
- /**
- * Constructor
- */
protected ReferenceImpl() {
}
- /**
- * @see org.apache.tuscany.model.assembly.Reference#getMultiplicity()
- */
public Multiplicity getMultiplicity() {
return multiplicity;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Reference#setMultiplicity(org.apache.tuscany.model.assembly.Multiplicity)
- */
public void setMultiplicity(Multiplicity multiplicity) {
checkNotFrozen();
this.multiplicity=multiplicity;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceContractImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceContractImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceContractImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceContractImpl.java
Wed Apr 12 18:03:55 2006
@@ -28,52 +28,31 @@
private Class callbackInterface;
private Scope scope;
- /**
- * Constructor
- */
protected ServiceContractImpl() {
}
- /**
- * @see
org.apache.tuscany.model.assembly.ServiceContract#getCallbackInterface()
- */
public Class getCallbackInterface() {
return callbackInterface;
}
- /**
- * @see org.apache.tuscany.model.assembly.ServiceContract#getInterface()
- */
public Class getInterface() {
return interface_;
}
- /**
- * @see org.apache.tuscany.model.assembly.ServiceContract#getScope()
- */
public Scope getScope() {
return scope;
}
- /**
- * @see
org.apache.tuscany.model.assembly.ServiceContract#setCallbackInterface(java.lang.Class)
- */
public void setCallbackInterface(Class value) {
checkNotFrozen();
callbackInterface=value;
}
- /**
- * @see
org.apache.tuscany.model.assembly.ServiceContract#setInterface(java.lang.Class)
- */
public void setInterface(Class value) {
checkNotFrozen();
interface_=value;
}
- /**
- * @see
org.apache.tuscany.model.assembly.ServiceContract#setScope(org.apache.tuscany.model.assembly.Scope)
- */
public void setScope(Scope scope) {
checkNotFrozen();
this.scope=scope;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceImpl.java
Wed Apr 12 18:03:55 2006
@@ -23,9 +23,6 @@
*/
public class ServiceImpl extends PortImpl implements Service {
- /**
- * Constructor
- */
protected ServiceImpl() {
}
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceURIImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceURIImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceURIImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/ServiceURIImpl.java
Wed Apr 12 18:03:55 2006
@@ -20,7 +20,7 @@
import org.apache.tuscany.model.assembly.ConfiguredReference;
import org.apache.tuscany.model.assembly.ConfiguredService;
import org.apache.tuscany.model.assembly.ModuleComponent;
-import org.apache.tuscany.model.assembly.AggregatePart;
+import org.apache.tuscany.model.assembly.Part;
import org.apache.tuscany.model.assembly.Service;
import org.apache.tuscany.model.assembly.ServiceURI;
@@ -38,6 +38,7 @@
/**
* Constructor
+ * @param address
*/
protected ServiceURIImpl(String address) {
this.address = address;
@@ -49,7 +50,7 @@
* @param moduleComponent
* @param configuredPort
*/
- protected ServiceURIImpl(ModuleComponent moduleComponent, AggregatePart
aggregatePart, ConfiguredPort configuredPort) {
+ protected ServiceURIImpl(ModuleComponent moduleComponent, Part
aggregatePart, ConfiguredPort configuredPort) {
if (moduleComponent != null)
moduleComponentName = moduleComponent.getName();
else
@@ -57,9 +58,9 @@
if (configuredPort instanceof ConfiguredService) {
partName = aggregatePart.getName();
ConfiguredService configuredService = (ConfiguredService)
configuredPort;
- Service service = configuredService.getService();
+ Service service = configuredService.getPort();
if (service != null) {
- serviceName = configuredService.getService().getName();
+ serviceName = configuredService.getPort().getName();
address = "sca:///" + moduleComponentName + '/' + partName +
'/' + serviceName;
} else {
address = "sca:///" + moduleComponentName + '/' + partName;
@@ -68,7 +69,7 @@
} else if (configuredPort instanceof ConfiguredReference) {
ConfiguredReference configuredReference = (ConfiguredReference)
configuredPort;
partName = aggregatePart.getName();
- serviceName = configuredReference.getReference().getName();
+ serviceName = configuredReference.getPort().getName();
if (serviceName!=null)
address = "sca:///" + moduleComponentName + '/' + partName +
'/' + serviceName;
else
@@ -151,18 +152,30 @@
}
}
+ /**
+ * Returns the module component name
+ * @return
+ */
public String getModuleComponentName() {
if (!isParsed)
parse();
return moduleComponentName;
}
+ /**
+ * Returns the part name
+ * @return
+ */
public String getPartName() {
if (!isParsed)
parse();
return partName;
}
+ /**
+ * Returns the service name
+ * @return
+ */
public String getServiceName() {
if (!isParsed)
parse();
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/SubsystemImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/SubsystemImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/SubsystemImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/SubsystemImpl.java
Wed Apr 12 18:03:55 2006
@@ -16,34 +16,34 @@
*/
package org.apache.tuscany.model.assembly.impl;
+import org.apache.tuscany.model.assembly.ComponentInfo;
import org.apache.tuscany.model.assembly.Subsystem;
/**
* An implementation of Subsystem.
*/
-public class SubsystemImpl extends AggregateImpl implements Subsystem {
+public class SubsystemImpl extends CompositeImpl implements Subsystem {
private String uri;
- /**
- * Constructor
- */
protected SubsystemImpl() {
}
- /**
- * @see org.apache.tuscany.model.assembly.Subsystem#getURI()
- */
public String getURI() {
return uri;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Subsystem#setURI(java.lang.String)
- */
public void setURI(String value) {
checkNotFrozen();
uri=value;
+ }
+
+ public ComponentInfo getComponentInfo() {
+ //TODO implement
+ return null;
+ }
+
+ public void setComponentInfo(ComponentInfo componentInfo) {
}
}
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/WireImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/WireImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/WireImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/assembly/impl/WireImpl.java
Wed Apr 12 18:03:55 2006
@@ -27,37 +27,22 @@
private ServiceURI source;
private ServiceURI target;
- /**
- * Constructor
- */
protected WireImpl() {
}
- /**
- * @see org.apache.tuscany.model.assembly.Wire#getSource()
- */
public ServiceURI getSource() {
return source;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Wire#setSource(org.apache.tuscany.model.assembly.ServiceURI)
- */
public void setSource(ServiceURI uri) {
checkNotFrozen();
source=uri;
}
- /**
- * @see org.apache.tuscany.model.assembly.Wire#getTarget()
- */
public ServiceURI getTarget() {
return target;
}
- /**
- * @see
org.apache.tuscany.model.assembly.Wire#setTarget(org.apache.tuscany.model.assembly.ServiceURI)
- */
public void setTarget(ServiceURI uri) {
checkNotFrozen();
target=uri;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/impl/JavaServiceContractImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/impl/JavaServiceContractImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/impl/JavaServiceContractImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/impl/JavaServiceContractImpl.java
Wed Apr 12 18:03:55 2006
@@ -16,7 +16,7 @@
*/
package org.apache.tuscany.model.types.java.impl;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
+import org.apache.tuscany.model.assembly.AssemblyContext;
import org.apache.tuscany.model.assembly.impl.ServiceContractImpl;
import org.apache.tuscany.model.types.java.JavaServiceContract;
@@ -49,9 +49,9 @@
}
/**
- * @see
org.apache.tuscany.model.assembly.impl.ExtensibleImpl#initialize(org.apache.tuscany.model.assembly.AssemblyModelContext)
+ * @see
org.apache.tuscany.model.assembly.impl.ExtensibleImpl#initialize(org.apache.tuscany.model.assembly.AssemblyContext)
*/
- public void initialize(AssemblyModelContext modelContext) {
+ public void initialize(AssemblyContext modelContext) {
if (isInitialized())
return;
Modified:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/wsdl/impl/WSDLServiceContractImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/wsdl/impl/WSDLServiceContractImpl.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/wsdl/impl/WSDLServiceContractImpl.java
(original)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/wsdl/impl/WSDLServiceContractImpl.java
Wed Apr 12 18:03:55 2006
@@ -30,7 +30,7 @@
import org.objectweb.asm.Type;
import org.apache.tuscany.common.resource.ResourceLoader;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
+import org.apache.tuscany.model.assembly.AssemblyContext;
import org.apache.tuscany.model.assembly.impl.ServiceContractImpl;
import org.apache.tuscany.model.assembly.loader.AssemblyModelLoader;
import org.apache.tuscany.model.types.wsdl.WSDLServiceContract;
@@ -90,9 +90,9 @@
}
/**
- * @see
org.apache.tuscany.model.assembly.impl.ExtensibleImpl#initialize(org.apache.tuscany.model.assembly.AssemblyModelContext)
+ * @see
org.apache.tuscany.model.assembly.impl.ExtensibleImpl#initialize(org.apache.tuscany.model.assembly.AssemblyContext)
*/
- public void initialize(AssemblyModelContext modelContext) {
+ public void initialize(AssemblyContext modelContext) {
if (isInitialized())
return;
super.initialize(modelContext);
Added:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/util/NotifyingList.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/util/NotifyingList.java?rev=393677&view=auto
==============================================================================
---
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/util/NotifyingList.java
(added)
+++
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/util/NotifyingList.java
Wed Apr 12 18:03:55 2006
@@ -0,0 +1,107 @@
+/**
+ *
+ * Copyright 2005 BEA Systems Inc.
+ * Copyright 2005 International Business Machines Corporation
+ *
+ * Licensed 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.tuscany.model.util;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * A list that invokes added or removed methods when elements are added or
removed.
+ *
+ */
+public abstract class NotifyingList<E> extends ArrayList<E> {
+
+ private boolean frozen;
+
+ public NotifyingList() {
+ }
+
+ public void freeze() {
+ frozen=true;
+ }
+
+ protected void checkNotFrozen() {
+ if (frozen)
+ throw new IllegalStateException("Attempt to modify a frozen list");
+ }
+
+ public boolean add(E element) {
+ checkNotFrozen();
+ boolean result=super.add(element);
+ added(element);
+ return result;
+ }
+
+ public void add(int index, E element) {
+ checkNotFrozen();
+ super.add(index, element);
+ added(element);
+ }
+
+ public boolean addAll(Collection<? extends E> c) {
+ checkNotFrozen();
+ boolean result=super.addAll(c);
+ for (E element : c)
+ added(element);
+ return result;
+ }
+
+ public boolean addAll(int index, Collection<? extends E> c) {
+ checkNotFrozen();
+ boolean result=super.addAll(index, c);
+ for (E element : c)
+ added(element);
+ return result;
+ }
+
+ public void clear() {
+ checkNotFrozen();
+ List<E> l=new ArrayList<E>(this);
+ super.clear();
+ for (E element : l)
+ removed(element);
+ }
+
+ public E remove(int index) {
+ checkNotFrozen();
+ E element=super.remove(index);
+ removed(element);
+ return element;
+ }
+
+ public boolean remove(Object element) {
+ checkNotFrozen();
+ boolean result=super.remove(element);
+ removed((E)element);
+ return result;
+ }
+
+ public boolean removeAll(Collection<?> c) {
+ checkNotFrozen();
+ boolean result=super.removeAll(c);
+ for (E element : (Collection<? extends E>)c)
+ removed(element);
+ return result;
+ }
+
+ protected abstract void added(E element);
+
+ protected abstract void removed(E element);
+
+}
Propchange:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/util/NotifyingList.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/util/NotifyingList.java
------------------------------------------------------------------------------
svn:keywords = Rev,Date
Modified:
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
(original)
+++
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
Wed Apr 12 18:03:55 2006
@@ -40,9 +40,9 @@
import org.apache.tuscany.core.context.event.ModuleStartEvent;
import org.apache.tuscany.core.runtime.RuntimeContext;
import org.apache.tuscany.model.assembly.AssemblyFactory;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
+import org.apache.tuscany.model.assembly.AssemblyContext;
import org.apache.tuscany.model.assembly.ModuleComponent;
-import org.apache.tuscany.model.assembly.impl.AssemblyModelContextImpl;
+import org.apache.tuscany.model.assembly.impl.AssemblyContextImpl;
import org.apache.tuscany.model.assembly.loader.AssemblyModelLoader;
/**
@@ -121,7 +121,7 @@
ClassLoader oldCl = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
try {
- AssemblyModelContext modelContext = new
AssemblyModelContextImpl(modelFactory, modelLoader, resourceLoader);
+ AssemblyContext modelContext = new
AssemblyContextImpl(modelFactory, modelLoader, resourceLoader);
ModuleComponentConfigurationLoader loader =
BootstrapHelper.getConfigurationLoader(runtime.getSystemContext(),
modelContext);
Modified:
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java?rev=393677&r1=393676&r2=393677&view=diff
==============================================================================
---
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
(original)
+++
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
Wed Apr 12 18:03:55 2006
@@ -36,7 +36,7 @@
import org.apache.tuscany.core.runtime.RuntimeContext;
import org.apache.tuscany.core.runtime.RuntimeContextImpl;
import org.apache.tuscany.model.assembly.AssemblyFactory;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
+import org.apache.tuscany.model.assembly.AssemblyContext;
import org.apache.tuscany.model.assembly.ModuleComponent;
import org.apache.tuscany.model.assembly.loader.AssemblyModelLoader;
@@ -69,7 +69,7 @@
private void startRuntime() {
// Create an assembly model context
- AssemblyModelContext modelContext =
BootstrapHelper.getModelContext(getClass().getClassLoader());
+ AssemblyContext modelContext =
BootstrapHelper.getModelContext(getClass().getClassLoader());
modelFactory = modelContext.getAssemblyFactory();
modelLoader = modelContext.getAssemblyLoader();