Author: jsdelfino
Date: Thu Aug 23 02:32:29 2007
New Revision: 568902

URL: http://svn.apache.org/viewvc?rev=568902&view=rev
Log:
Simplified base assembly model interface to make getExtensions() optional.

Added:
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
   (with props)
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
   (with props)
Modified:
    
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ComponentTypeProcessor.java
    
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConstrainingType.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConstrainingTypeImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java
    
incubator/tuscany/java/sca/modules/assembly/src/test/java/org/apache/tuscany/sca/assembly/TestBinding.java
    
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/AtomBindingImpl.java
    
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/RSSBindingImpl.java
    
incubator/tuscany/java/sca/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/impl/HTTPResourceBindingImpl.java
    
incubator/tuscany/java/sca/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/JMSBinding.java
    
incubator/tuscany/java/sca/modules/binding-notification/src/main/java/org/apache/tuscany/sca/binding/notification/NotificationBindingImpl.java
    
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/DistributedSCABindingImpl.java
    
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/SCABindingImpl.java
    
incubator/tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/WebServiceBinding.java
    
incubator/tuscany/java/sca/modules/host-embedded/src/test/java/test/crud/impl/CRUDImplementationImpl.java
    
incubator/tuscany/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
    
incubator/tuscany/java/sca/modules/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java
    
incubator/tuscany/java/sca/modules/implementation-data/src/main/java/org/apache/tuscany/sca/implementation/data/DATAImplementation.java
    
incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/BaseJavaImplementation.java
    
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/OSGiImplementationInterface.java
    
incubator/tuscany/java/sca/modules/implementation-resource/src/main/java/org/apache/tuscany/sca/implementation/resource/impl/ResourceImplementationImpl.java
    
incubator/tuscany/java/sca/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/SpringImplementation.java
    
incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingImpl.java
    
incubator/tuscany/java/sca/samples/binding-echo2-extension/src/main/java/echo2/extension/EchoBinding.java
    
incubator/tuscany/java/sca/samples/implementation-crud-extension/src/main/java/crud/impl/CRUDImplementationImpl.java
    
incubator/tuscany/java/sca/samples/implementation-crud2-extension/src/main/java/crud2/extension/CRUDImplementation.java
    
incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationImpl.java

Modified: 
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ComponentTypeProcessor.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ComponentTypeProcessor.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ComponentTypeProcessor.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ComponentTypeProcessor.java
 Thu Aug 23 02:32:29 2007
@@ -36,6 +36,7 @@
 import org.apache.tuscany.sca.assembly.Callback;
 import org.apache.tuscany.sca.assembly.ComponentType;
 import org.apache.tuscany.sca.assembly.Contract;
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.assembly.Property;
 import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.Service;
@@ -170,7 +171,9 @@
                                     } else if (property != null) {
                                         
property.getExtensions().add(extension);
                                     } else {
-                                        
componentType.getExtensions().add(extension);
+                                        if (componentType instanceof 
Extensible) {
+                                            
((Extensible)componentType).getExtensions().add(extension);
+                                        }
                                     }
                                 }
                             }
@@ -302,8 +305,10 @@
                 writeEnd(writer);
             }
     
-            for (Object extension: componentType.getExtensions()) {
-                extensionProcessor.write(extension, writer);
+            if (componentType instanceof Extensible) {
+                for (Object extension: 
((Extensible)componentType).getExtensions()) {
+                    extensionProcessor.write(extension, writer);
+                }
             }
             
             writeEndDocument(writer);

Modified: 
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
 Thu Aug 23 02:32:29 2007
@@ -653,12 +653,10 @@
             }
         }
 
-        // resolve and extensions to the standard SCDL that appear in the
-        // SCDL.
-        for (int i = 0, n = composite.getExtensions().size(); i < n; i++) {
-            Object model = composite.getExtensions().get(i);
-            if (model != null) {
-                extensionProcessor.resolve(model, resolver);
+        // Resolve extensions
+        for (Object extension: composite.getExtensions()) {
+            if (extension != null) {
+                extensionProcessor.resolve(extension, resolver);
             }
         }
 

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java
 Thu Aug 23 02:32:29 2007
@@ -27,7 +27,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface AbstractContract extends Base, IntentAttachPoint {
+public interface AbstractContract extends Base, Extensible, IntentAttachPoint {
 
     /**
      * Returns the name of the contract.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java
 Thu Aug 23 02:32:29 2007
@@ -28,7 +28,7 @@
  * property has a data type, which may be either simple or complex. An
  * implementation may also define a default value for a property.
  */
-public interface AbstractProperty extends Base, IntentAttachPoint {
+public interface AbstractProperty extends Base, Extensible, IntentAttachPoint {
 
     /**
      * Returns the property name.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java
 Thu Aug 23 02:32:29 2007
@@ -18,7 +18,6 @@
  */
 package org.apache.tuscany.sca.assembly;
 
-import java.util.List;
 
 /**
  * Base interface for all assembly model objects.
@@ -26,13 +25,6 @@
  * @version $Rev$ $Date$
  */
 public interface Base {
-
-    /**
-     * Returns a list of extension objects contained in this model object.
-     * 
-     * @return a list of extension objects container in this model object
-     */
-    List<Object> getExtensions();
 
     /**
      * Returns true if the model element is unresolved.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java
 Thu Aug 23 02:32:29 2007
@@ -28,7 +28,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface Callback extends Base, IntentAttachPoint, 
PolicySetAttachPoint {
+public interface Callback extends Extensible, IntentAttachPoint, 
PolicySetAttachPoint {
 
     /**
      * Returns the bindings supported for callbacks.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
 Thu Aug 23 02:32:29 2007
@@ -29,7 +29,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface Component extends Base, IntentAttachPoint, 
PolicySetAttachPoint, Cloneable {
+public interface Component extends Base, Extensible, IntentAttachPoint, 
PolicySetAttachPoint, Cloneable {
     
     /**
      * Returns the URI of the component.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java
 Thu Aug 23 02:32:29 2007
@@ -28,7 +28,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface Composite extends Implementation, Cloneable {
+public interface Composite extends Implementation, Extensible, Cloneable {
 
     /**
      * Returns the name of the composite.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConstrainingType.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConstrainingType.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConstrainingType.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConstrainingType.java
 Thu Aug 23 02:32:29 2007
@@ -32,7 +32,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface ConstrainingType extends Base, IntentAttachPoint {
+public interface ConstrainingType extends Base, Extensible, IntentAttachPoint {
 
     /**
      * Returns the name of the constrainingType.

Added: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java?rev=568902&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
 (added)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
 Thu Aug 23 02:32:29 2007
@@ -0,0 +1,37 @@
+/*
+ * 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.tuscany.sca.assembly;
+
+import java.util.List;
+
+/**
+ * Base interface for extensible assembly model objects.
+ * 
+ * @version $Rev$ $Date$
+ */
+public interface Extensible {
+
+    /**
+     * Returns a list of extension objects contained in this model object.
+     * 
+     * @return a list of extension objects container in this model object
+     */
+    List<Object> getExtensions();
+
+}

Propchange: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java
 Thu Aug 23 02:32:29 2007
@@ -26,7 +26,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface Wire extends Base, IntentAttachPoint, PolicySetAttachPoint, 
Cloneable {
+public interface Wire extends Base, Extensible, IntentAttachPoint, 
PolicySetAttachPoint, Cloneable {
 
     /**
      * Returns the source of the wire.

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java
 Thu Aug 23 02:32:29 2007
@@ -33,7 +33,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class AbstractPropertyImpl extends BaseImpl implements AbstractProperty 
{
+public class AbstractPropertyImpl extends ExtensibleImpl implements 
AbstractProperty {
     private Object value;
     private String name;
     private QName xsdType;

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java
 Thu Aug 23 02:32:29 2007
@@ -18,9 +18,6 @@
  */
 package org.apache.tuscany.sca.assembly.impl;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import org.apache.tuscany.sca.assembly.Base;
 
 /**
@@ -29,7 +26,6 @@
  * @version $Rev$ $Date$
  */
 public abstract class BaseImpl implements Base {
-    private List<Object> extensions = new ArrayList<Object>();
     private boolean unresolved;
 
     /**
@@ -38,10 +34,6 @@
     protected BaseImpl() {
     }
     
-    public List<Object> getExtensions() {
-        return extensions;
-    }
-
     public boolean isUnresolved() {
         return unresolved;
     }

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java
 Thu Aug 23 02:32:29 2007
@@ -33,7 +33,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class CallbackImpl extends BaseImpl implements Callback {
+public class CallbackImpl extends ExtensibleImpl implements Callback {
     private List<Binding> bindings = new ArrayList<Binding>();
     private List<Intent> requiredIntents = new ArrayList<Intent>();
     private List<PolicySet> policySets = new ArrayList<PolicySet>();

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
 Thu Aug 23 02:32:29 2007
@@ -36,7 +36,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class ComponentImpl extends BaseImpl implements Component, Cloneable {
+public class ComponentImpl extends ExtensibleImpl implements Component, 
Cloneable {
     private ConstrainingType constrainingType;
     private Implementation implementation;
     private String name;

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
 Thu Aug 23 02:32:29 2007
@@ -36,7 +36,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class ComponentTypeImpl extends BaseImpl implements ComponentType, 
Cloneable, PolicySetAttachPoint {
+public class ComponentTypeImpl extends ExtensibleImpl implements 
ComponentType, Cloneable, PolicySetAttachPoint {
     private String uri;
     private ConstrainingType constrainingType;
     private List<Property> properties = new ArrayList<Property>();

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConstrainingTypeImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConstrainingTypeImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConstrainingTypeImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConstrainingTypeImpl.java
 Thu Aug 23 02:32:29 2007
@@ -36,7 +36,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class ConstrainingTypeImpl extends BaseImpl implements ConstrainingType 
{
+public class ConstrainingTypeImpl extends ExtensibleImpl implements 
ConstrainingType {
     private QName name;
     private List<AbstractProperty> properties = new 
ArrayList<AbstractProperty>();
     private List<AbstractReference> references = new 
ArrayList<AbstractReference>();

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java
 Thu Aug 23 02:32:29 2007
@@ -26,7 +26,7 @@
 import org.apache.tuscany.sca.policy.Intent;
 import org.apache.tuscany.sca.policy.IntentAttachPointType;
 
-public class ContractImpl extends BaseImpl implements AbstractContract {
+public class ContractImpl extends ExtensibleImpl implements AbstractContract {
     private InterfaceContract interfaceContract;
     private String name;
     private List<Intent> requiredIntents = new ArrayList<Intent>();

Added: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java?rev=568902&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
 (added)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
 Thu Aug 23 02:32:29 2007
@@ -0,0 +1,44 @@
+/*
+ * 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.tuscany.sca.assembly.impl;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.tuscany.sca.assembly.Extensible;
+
+/**
+ * Convenience base class for extensible assembly model objects.
+ * 
+ * @version $Rev$ $Date$
+ */
+public abstract class ExtensibleImpl extends BaseImpl implements Extensible {
+    private List<Object> extensions = new ArrayList<Object>();
+
+    /**
+     * Constructs a new base model object.
+     */
+    protected ExtensibleImpl() {
+    }
+    
+    public List<Object> getExtensions() {
+        return extensions;
+    }
+
+}

Propchange: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java
 Thu Aug 23 02:32:29 2007
@@ -33,7 +33,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class WireImpl extends BaseImpl implements Wire, Cloneable {
+public class WireImpl extends ExtensibleImpl implements Wire, Cloneable {
     private ComponentReference source;
     private ComponentService target;
     private List<Intent> requiredIntents = new ArrayList<Intent>();

Modified: 
incubator/tuscany/java/sca/modules/assembly/src/test/java/org/apache/tuscany/sca/assembly/TestBinding.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/test/java/org/apache/tuscany/sca/assembly/TestBinding.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/assembly/src/test/java/org/apache/tuscany/sca/assembly/TestBinding.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/assembly/src/test/java/org/apache/tuscany/sca/assembly/TestBinding.java
 Thu Aug 23 02:32:29 2007
@@ -43,10 +43,6 @@
     public void setURI(String uri) {
     }
 
-    public List<Object> getExtensions() {
-        return null;
-    }
-    
     public void setUnresolved(boolean unresolved) {
     }
     

Modified: 
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/AtomBindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/AtomBindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/AtomBindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/AtomBindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -49,11 +49,6 @@
     }
 
 
-    public List<Object> getExtensions() {
-        // The binding does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         // The binding is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/RSSBindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/RSSBindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/RSSBindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-feed/src/main/java/org/apache/tuscany/sca/binding/feed/impl/RSSBindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -48,11 +48,6 @@
         this.uri = uri;
     }
 
-    public List<Object> getExtensions() {
-        // The binding does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         return false;
     }

Modified: 
incubator/tuscany/java/sca/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/impl/HTTPResourceBindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/impl/HTTPResourceBindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/impl/HTTPResourceBindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/impl/HTTPResourceBindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -50,11 +50,6 @@
     }
 
     
-    public List<Object> getExtensions() {
-        // The sample binding does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         return false;
     }

Modified: 
incubator/tuscany/java/sca/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/JMSBinding.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/JMSBinding.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/JMSBinding.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/JMSBinding.java
 Thu Aug 23 02:32:29 2007
@@ -21,6 +21,7 @@
 
 import org.apache.tuscany.sca.assembly.Base;
 import org.apache.tuscany.sca.assembly.Binding;
+import org.apache.tuscany.sca.assembly.Extensible;
 
 /**
  * This is the generic JMS binding type. The type is extensible so that JMS
@@ -30,7 +31,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface JMSBinding extends Binding, Base {
+public interface JMSBinding extends Binding, Extensible {
     /**
      * Identifies the correlation scheme used when sending reply or callback
      * messages. Valid values are "RequestMsgIDToCorrelID" (the default),

Modified: 
incubator/tuscany/java/sca/modules/binding-notification/src/main/java/org/apache/tuscany/sca/binding/notification/NotificationBindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-notification/src/main/java/org/apache/tuscany/sca/binding/notification/NotificationBindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-notification/src/main/java/org/apache/tuscany/sca/binding/notification/NotificationBindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-notification/src/main/java/org/apache/tuscany/sca/binding/notification/NotificationBindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -25,7 +25,7 @@
 /**
  * @version $Rev$ $Date$
  */
-public class NotificationBindingImpl extends BaseImpl implements 
NotificationBinding {
+public class NotificationBindingImpl implements NotificationBinding {
     private String name;
     private String uri;
     protected String ntmAddress;
@@ -66,5 +66,12 @@
     
     public void setNotificationType(URI notificationType) {
         this.notificationType = notificationType;
+    }
+    
+    public void setUnresolved(boolean unresolved) {
+    }
+    
+    public boolean isUnresolved() {
+        return false;
     }
 }

Modified: 
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/DistributedSCABindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/DistributedSCABindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/DistributedSCABindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/DistributedSCABindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -91,15 +91,6 @@
     }
     
     /**
-     * Returns a list of extension objects contained in this model object.
-     * 
-     * @return a list of extension objects container in this model object
-     */
-    public List<Object> getExtensions(){
-        return null;
-    }
-
-    /**
      * Returns true if the model element is unresolved.
      * 
      * @return true if the model element is unresolved.

Modified: 
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/SCABindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/SCABindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/SCABindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/impl/SCABindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -24,6 +24,7 @@
 import org.apache.tuscany.sca.assembly.Binding;
 import org.apache.tuscany.sca.assembly.Component;
 import org.apache.tuscany.sca.assembly.ComponentService;
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.assembly.SCABinding;
 import org.apache.tuscany.sca.assembly.WireableBinding;
 import org.apache.tuscany.sca.distributed.domain.DistributedSCADomain;
@@ -33,7 +34,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public class SCABindingImpl implements SCABinding, WireableBinding {
+public class SCABindingImpl implements SCABinding, Extensible, WireableBinding 
{
     private String name;
     private String uri;
     private List<Object> extensions = new ArrayList<Object>();

Modified: 
incubator/tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/WebServiceBinding.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/WebServiceBinding.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/WebServiceBinding.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/WebServiceBinding.java
 Thu Aug 23 02:32:29 2007
@@ -23,6 +23,7 @@
 import javax.xml.namespace.QName;
 
 import org.apache.tuscany.sca.assembly.Binding;
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.interfacedef.InterfaceContract;
 import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
 
@@ -32,7 +33,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface WebServiceBinding extends Binding {
+public interface WebServiceBinding extends Binding, Extensible {
 
     /**
      * Sets the WSDL location. 

Modified: 
incubator/tuscany/java/sca/modules/host-embedded/src/test/java/test/crud/impl/CRUDImplementationImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-embedded/src/test/java/test/crud/impl/CRUDImplementationImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/host-embedded/src/test/java/test/crud/impl/CRUDImplementationImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/host-embedded/src/test/java/test/crud/impl/CRUDImplementationImpl.java
 Thu Aug 23 02:32:29 2007
@@ -107,12 +107,6 @@
         // The sample CRUD implementation does not have a URI
     }
 
-
-    public List<Object> getExtensions() {
-        // The sample CRUD implementation does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         // The sample CRUD implementation is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-bpel/src/main/java/org/apache/tuscany/sca/implementation/bpel/BPELImplementation.java
 Thu Aug 23 02:32:29 2007
@@ -18,6 +18,7 @@
  */
 package org.apache.tuscany.sca.implementation.bpel;
 
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.ode.bpel.iapi.ProcessConf;
 
@@ -28,7 +29,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface BPELImplementation extends Implementation {
+public interface BPELImplementation extends Implementation, Extensible {
 
     /**
      * Builds the process configuration used by ODE to get deployment and 
configuration

Modified: 
incubator/tuscany/java/sca/modules/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-das/src/main/java/org/apache/tuscany/sca/implementation/das/DASImplementation.java
 Thu Aug 23 02:32:29 2007
@@ -114,11 +114,6 @@
         // The sample DAS implementation does not have a URI
     }
 
-    public List<Object> getExtensions() {
-        // The sample DAS implementation does not support extensions
-        return Collections.emptyList();
-    }
-    
     public boolean isUnresolved() {
         // The sample DAS implementation is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/modules/implementation-data/src/main/java/org/apache/tuscany/sca/implementation/data/DATAImplementation.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-data/src/main/java/org/apache/tuscany/sca/implementation/data/DATAImplementation.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-data/src/main/java/org/apache/tuscany/sca/implementation/data/DATAImplementation.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-data/src/main/java/org/apache/tuscany/sca/implementation/data/DATAImplementation.java
 Thu Aug 23 02:32:29 2007
@@ -116,11 +116,6 @@
     }
 
 
-    public List<Object> getExtensions() {
-        // The sample DATA implementation does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         // The sample DATA implementation is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/BaseJavaImplementation.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/BaseJavaImplementation.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/BaseJavaImplementation.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-java/src/main/java/org/apache/tuscany/sca/implementation/java/BaseJavaImplementation.java
 Thu Aug 23 02:32:29 2007
@@ -18,6 +18,7 @@
  */
 package org.apache.tuscany.sca.implementation.java;
 
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.assembly.Implementation;
 
 /**
@@ -25,7 +26,7 @@
  * 
  * @version $Rev$ $Date$
  */
-public interface BaseJavaImplementation extends Implementation {
+public interface BaseJavaImplementation extends Implementation, Extensible {
 
     /**
      * Returns the name of the Java implementation class.

Modified: 
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/OSGiImplementationInterface.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/OSGiImplementationInterface.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/OSGiImplementationInterface.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/OSGiImplementationInterface.java
 Thu Aug 23 02:32:29 2007
@@ -21,6 +21,7 @@
 import java.util.List;
 
 import org.apache.tuscany.sca.assembly.ComponentProperty;
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.core.scope.Scope;
 
@@ -29,7 +30,7 @@
  * The model representing an OSGi implementation in an SCA assembly model.
  *
  */
-public interface OSGiImplementationInterface extends Implementation {
+public interface OSGiImplementationInterface extends Implementation, 
Extensible {
     
     public String getBundleName();
     

Modified: 
incubator/tuscany/java/sca/modules/implementation-resource/src/main/java/org/apache/tuscany/sca/implementation/resource/impl/ResourceImplementationImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-resource/src/main/java/org/apache/tuscany/sca/implementation/resource/impl/ResourceImplementationImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-resource/src/main/java/org/apache/tuscany/sca/implementation/resource/impl/ResourceImplementationImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-resource/src/main/java/org/apache/tuscany/sca/implementation/resource/impl/ResourceImplementationImpl.java
 Thu Aug 23 02:32:29 2007
@@ -118,11 +118,6 @@
     }
 
 
-    public List<Object> getExtensions() {
-        // The resource implementation does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         return unresolved;
     }

Modified: 
incubator/tuscany/java/sca/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/SpringImplementation.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/SpringImplementation.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/SpringImplementation.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/SpringImplementation.java
 Thu Aug 23 02:32:29 2007
@@ -22,6 +22,7 @@
 import java.util.List;
 
 import org.apache.tuscany.sca.assembly.ComponentType;
+import org.apache.tuscany.sca.assembly.Extensible;
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.Property;
 import org.apache.tuscany.sca.assembly.Reference;
@@ -35,7 +36,7 @@
  * 
  * @version $Rev: 511195 $ $Date: 2007-02-24 02:29:46 +0000 (Sat, 24 Feb 2007) 
$ 
  */
-public class SpringImplementation extends ComponentTypeImpl implements 
Implementation {
+public class SpringImplementation extends ComponentTypeImpl implements 
Implementation, Extensible {
 
     // The location attribute which points to the Spring application-context 
XML file
     private String springLocation;

Modified: 
incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingImpl.java
 Thu Aug 23 02:32:29 2007
@@ -20,7 +20,6 @@
 package echo.impl;
 
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.List;
 
 import org.apache.tuscany.sca.policy.Intent;
@@ -70,11 +69,6 @@
 
     public List<Intent> getRequiredIntents() {
         return requiredIntents;
-    }
-
-    public List<Object> getExtensions() {
-        // The sample binding does not support extensions
-        return Collections.emptyList();
     }
 
     public boolean isUnresolved() {

Modified: 
incubator/tuscany/java/sca/samples/binding-echo2-extension/src/main/java/echo2/extension/EchoBinding.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/binding-echo2-extension/src/main/java/echo2/extension/EchoBinding.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/samples/binding-echo2-extension/src/main/java/echo2/extension/EchoBinding.java
 (original)
+++ 
incubator/tuscany/java/sca/samples/binding-echo2-extension/src/main/java/echo2/extension/EchoBinding.java
 Thu Aug 23 02:32:29 2007
@@ -48,11 +48,6 @@
         this.uri = uri;
     }
 
-    public List<Object> getExtensions() {
-        // The sample binding does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         // The sample binding is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/samples/implementation-crud-extension/src/main/java/crud/impl/CRUDImplementationImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/implementation-crud-extension/src/main/java/crud/impl/CRUDImplementationImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/samples/implementation-crud-extension/src/main/java/crud/impl/CRUDImplementationImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/samples/implementation-crud-extension/src/main/java/crud/impl/CRUDImplementationImpl.java
 Thu Aug 23 02:32:29 2007
@@ -105,11 +105,6 @@
         // The sample CRUD implementation does not have a URI
     }
 
-    public List<Object> getExtensions() {
-        // The sample CRUD implementation does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         // The sample CRUD implementation is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/samples/implementation-crud2-extension/src/main/java/crud2/extension/CRUDImplementation.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/implementation-crud2-extension/src/main/java/crud2/extension/CRUDImplementation.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/samples/implementation-crud2-extension/src/main/java/crud2/extension/CRUDImplementation.java
 (original)
+++ 
incubator/tuscany/java/sca/samples/implementation-crud2-extension/src/main/java/crud2/extension/CRUDImplementation.java
 Thu Aug 23 02:32:29 2007
@@ -116,11 +116,6 @@
         // The sample CRUD implementation does not have a URI
     }
 
-    public List<Object> getExtensions() {
-        // The sample CRUD implementation does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         // The sample CRUD implementation is always resolved
         return false;

Modified: 
incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationImpl.java?rev=568902&r1=568901&r2=568902&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationImpl.java
 Thu Aug 23 02:32:29 2007
@@ -131,11 +131,6 @@
         this.uri = uri;
     }
 
-    public List<Object> getExtensions() {
-        // The sample POJO implementation does not support extensions
-        return Collections.emptyList();
-    }
-
     public boolean isUnresolved() {
         return unresolved;
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to