You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2006/05/09 20:56:24 UTC
svn commit: r405498 - in
/incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo:
injection/ injection/XSDHelperObjectFactory.java system/
system/SDOService.java
Author: jmarino
Date: Tue May 9 11:56:22 2006
New Revision: 405498
URL: http://svn.apache.org/viewcvs?rev=405498&view=rev
Log:
beginning sdo helper injector
Added:
incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/injection/
incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/injection/XSDHelperObjectFactory.java
incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/system/
incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/system/SDOService.java
Added: incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/injection/XSDHelperObjectFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/injection/XSDHelperObjectFactory.java?rev=405498&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/injection/XSDHelperObjectFactory.java (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/injection/XSDHelperObjectFactory.java Tue May 9 11:56:22 2006
@@ -0,0 +1,49 @@
+package org.apache.tuscany.databinding.sdo.injection;
+
+import commonj.sdo.helper.XSDHelper;
+import org.apache.tuscany.core.builder.ContextResolver;
+import org.apache.tuscany.core.builder.ObjectFactory;
+import org.apache.tuscany.core.context.AutowireContext;
+import org.apache.tuscany.core.context.CompositeContext;
+import org.apache.tuscany.core.injection.ObjectCreationException;
+import org.apache.tuscany.databinding.sdo.system.SDOService;
+
+/**
+ * @version $$Rev$$ $$Date$$
+ */
+public class XSDHelperObjectFactory implements ObjectFactory<XSDHelper> {
+
+
+ private ContextResolver resolver;
+
+ /**
+ * @throws org.apache.tuscany.core.injection.FactoryInitException
+ *
+ */
+ public XSDHelperObjectFactory(ContextResolver resolver) {
+ this.resolver = resolver;
+ }
+
+
+ public XSDHelper getInstance() throws ObjectCreationException {
+ CompositeContext parent = resolver.getCurrentContext();
+ if (parent == null) {
+ return null;// FIXME semantic here means required is not followed
+ }
+ if (!(parent instanceof AutowireContext)) {
+ ObjectCreationException e = new ObjectCreationException("Parent does not implement "
+ + AutowireContext.class.getName());
+ e.setIdentifier(parent.getName());
+ throw e;
+ }
+ AutowireContext ctx = (AutowireContext) parent;
+ SDOService assemblyCtx = ctx.resolveInstance(SDOService.class);
+ return assemblyCtx.getHelper();
+ }
+
+ public void setContextResolver(ContextResolver resolver) {
+ this.resolver = resolver;
+ }
+
+
+}
Added: incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/system/SDOService.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/system/SDOService.java?rev=405498&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/system/SDOService.java (added)
+++ incubator/tuscany/java/sca/databinding/sdo/src/main/java/org/apache/tuscany/databinding/sdo/system/SDOService.java Tue May 9 11:56:22 2006
@@ -0,0 +1,15 @@
+package org.apache.tuscany.databinding.sdo.system;
+
+import commonj.sdo.helper.XSDHelper;
+import commonj.sdo.helper.DataFactory;
+
+/**
+ * @version $$Rev$$ $$Date$$
+ */
+public interface SDOService {
+
+ public XSDHelper getHelper();
+
+ public DataFactory getDataFactory();
+
+}