You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by me...@apache.org on 2006/12/31 18:34:14 UTC
svn commit: r491456 - in
/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi:
component/Component.java extension/AbstractComponentExtension.java
Author: meerajk
Date: Sun Dec 31 09:34:13 2006
New Revision: 491456
URL: http://svn.apache.org/viewvc?view=rev&rev=491456
Log:
Added operation to get the component definition.
Modified:
incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Component.java
incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AbstractComponentExtension.java
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Component.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Component.java?view=diff&rev=491456&r1=491455&r2=491456
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Component.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Component.java Sun Dec 31 09:34:13 2006
@@ -22,6 +22,8 @@
import java.util.List;
import java.util.Map;
+import org.apache.tuscany.spi.model.ComponentDefinition;
+import org.apache.tuscany.spi.model.Implementation;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.wire.InboundWire;
import org.apache.tuscany.spi.wire.OutboundWire;
@@ -75,9 +77,19 @@
throws TargetInvokerCreationException;
/**
- * Gets all the properties for the components.
- * @return All properties configured for the component.
+ * Gets the component definition associated with the component.
+ * @return Definition associated with the component.
*/
- Map<String, Object> getProperties();
+ ComponentDefinition<Implementation<?>> getComponentDefinition();
+
+ /**
+ * Gets the component definition associated with the component.
+ * @param definition Definition associated with the component.
+ * TODO This shouldn't be mutable, rather set during construction. However,
+ * passing it in the constructor of the implementing class has implications
+ * in the usage of various types in the inheritance tree.
+ * @deprecated Remove this when immutability is enforced in the implemenation tree.
+ */
+ void setComponentDefinition(ComponentDefinition<Implementation<?>> definition);
}
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AbstractComponentExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AbstractComponentExtension.java?view=diff&rev=491456&r1=491455&r2=491456
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AbstractComponentExtension.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AbstractComponentExtension.java Sun Dec 31 09:34:13 2006
@@ -18,11 +18,11 @@
*/
package org.apache.tuscany.spi.extension;
-import java.util.Map;
-
import org.apache.tuscany.spi.component.AbstractSCAObject;
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.CompositeComponent;
+import org.apache.tuscany.spi.model.ComponentDefinition;
+import org.apache.tuscany.spi.model.Implementation;
/**
*
@@ -31,22 +31,45 @@
*/
public abstract class AbstractComponentExtension extends AbstractSCAObject implements Component {
+ /** Component Definition */
+ private ComponentDefinition<Implementation<?>> componentDefinition;
+
+ /**
+ * Initializes component name and parent.
+ *
+ * @param name Name of the component.
+ * @param parent Parent of the component.
+ * @param componentDefinition Definition of this component.
+ */
+ public AbstractComponentExtension(String name, CompositeComponent parent, ComponentDefinition<Implementation<?>> componentDefinition) {
+ super(name, parent);
+ this.componentDefinition = componentDefinition;
+ }
+
/**
* Initializes component name and parent.
*
* @param name Name of the component.
* @param parent Parent of the component.
+ * @param componentDefinition Definition of this component.
+ * @deprecated Use <code>AbstractComponentExtension(String name, CompositeComponent parent, ComponentDefinition<Implementation<?>> componentDefinition)</code>.
*/
public AbstractComponentExtension(String name, CompositeComponent parent) {
super(name, parent);
}
/**
- * @see org.apache.tuscany.spi.component.Component#getProperties()
+ * @see org.apache.tuscany.spi.component.Component#getComponentDefinition()
*/
+ public ComponentDefinition<Implementation<?>> getComponentDefinition() {
+ return componentDefinition;
+ }
- public Map<String, Object> getProperties() {
- return null;
+ /**
+ * @see org.apache.tuscany.spi.component.Component#setComponentDefinition(org.apache.tuscany.spi.model.ComponentDefinition)
+ */
+ public void setComponentDefinition(ComponentDefinition<Implementation<?>> componentDefinition) {
+ this.componentDefinition = componentDefinition;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org