Author: thomas.diesler(a)jboss.com
Date: 2009-06-19 12:15:26 -0400 (Fri, 19 Jun 2009)
New Revision: 90475
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/SchemaResolverParser.java
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBean.java
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBlueprint.java
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TReference.java
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TService.java
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/reflect/BlueprintMetadata.java
Log:
More work on JAXB annotated parsing
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/SchemaResolverParser.java
===================================================================
---
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/SchemaResolverParser.java 2009-06-19
15:51:59 UTC (rev 90474)
+++
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/SchemaResolverParser.java 2009-06-19
16:15:26 UTC (rev 90475)
@@ -30,7 +30,6 @@
import org.jboss.osgi.blueprint.BlueprintContext;
import org.jboss.osgi.blueprint.BlueprintException;
import org.jboss.osgi.blueprint.parser.xb.TBlueprint;
-import org.jboss.util.xml.JBossEntityResolver;
import org.jboss.xb.binding.JBossXBException;
import org.jboss.xb.binding.Unmarshaller;
import org.jboss.xb.binding.UnmarshallerFactory;
@@ -50,7 +49,6 @@
public SchemaResolverParser(BlueprintContext context)
{
- JBossEntityResolver.registerEntity(XMLNS_BLUEPRINT, "blueprint.xsd");
resolver = new BlueprintSchemaResolver(context);
}
@@ -93,7 +91,8 @@
try
{
- addClassBinding(BlueprintContext.XMLNS_BLUEPRINT,
TBlueprint.class.getName());
+ addSchemaLocation(XMLNS_BLUEPRINT, "blueprint.xsd");
+ addClassBinding(BlueprintContext.XMLNS_BLUEPRINT, TBlueprint.class);
}
catch (RuntimeException rte)
{
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBean.java
===================================================================
---
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBean.java 2009-06-19
15:51:59 UTC (rev 90474)
+++
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBean.java 2009-06-19
16:15:26 UTC (rev 90475)
@@ -29,8 +29,12 @@
import java.util.Map;
import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;
+import org.jboss.osgi.blueprint.BlueprintContext;
/**
* The type defintion for a <bean> component.
@@ -38,6 +42,7 @@
* @author thomas.diesler(a)jboss.com
* @since 13-May-2009
*/
+@XmlType(name = "Tbean", namespace = BlueprintContext.XMLNS_BLUEPRINT)
public class TBean extends TComponent
{
protected String description;
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBlueprint.java
===================================================================
---
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBlueprint.java 2009-06-19
15:51:59 UTC (rev 90474)
+++
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TBlueprint.java 2009-06-19
16:15:26 UTC (rev 90475)
@@ -33,11 +33,14 @@
import java.util.Map;
import java.util.Set;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlNsForm;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;
+import org.jboss.osgi.blueprint.BlueprintContext;
import org.jboss.osgi.spi.NotImplementedException;
import org.jboss.xb.annotations.JBossXmlSchema;
import org.osgi.service.blueprint.container.NoSuchComponentException;
@@ -56,13 +59,17 @@
* @author thomas.diesler(a)jboss.com
* @since 13-May-2009
*/
-@JBossXmlSchema(namespace="urn:jboss:policy:1.0", elementFormDefault=
XmlNsForm.QUALIFIED)
+(a)JBossXmlSchema(namespace=BlueprintContext.XMLNS_BLUEPRINT, elementFormDefault=
XmlNsForm.QUALIFIED)
@XmlRootElement(name="blueprint")
@XmlType(name="Tblueprint")
public class TBlueprint
{
protected String description;
protected TTypeConverters typeConverters;
+ @XmlElements({
+ @XmlElement(name="bean", type=TBean.class),
+ @XmlElement(name="service", type=TService.class),
+ @XmlElement(name="reference", type=TReference.class)})
protected List<TComponent> components;
protected Boolean defaultLazyInit;
protected String defaultInitMethod;
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TReference.java
===================================================================
---
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TReference.java 2009-06-19
15:51:59 UTC (rev 90474)
+++
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TReference.java 2009-06-19
16:15:26 UTC (rev 90475)
@@ -25,7 +25,11 @@
import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlType;
+import org.jboss.osgi.blueprint.BlueprintContext;
+
+
/**
*
*
@@ -54,6 +58,7 @@
*
*
*/
+@XmlType(name = "Treference", namespace = BlueprintContext.XMLNS_BLUEPRINT)
public class TReference extends TServiceReference
{
protected BigInteger timeout;
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TService.java
===================================================================
---
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TService.java 2009-06-19
15:51:59 UTC (rev 90474)
+++
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/parser/xb/TService.java 2009-06-19
16:15:26 UTC (rev 90475)
@@ -29,15 +29,19 @@
import java.util.List;
import java.util.Map;
+import javax.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;
+import org.jboss.osgi.blueprint.BlueprintContext;
+
/**
* Tservice is the type for services exported by this blueprint bundle. Services are
sourced by either a <ref> to a <bean> component or an <inline> bean
component.
*
* @author thomas.diesler(a)jboss.com
* @since 13-May-2009
*/
+@XmlType(name = "Tservice", namespace = BlueprintContext.XMLNS_BLUEPRINT)
public class TService extends TComponent
{
protected String description;
Modified:
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/reflect/BlueprintMetadata.java
===================================================================
---
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/reflect/BlueprintMetadata.java 2009-06-19
15:51:59 UTC (rev 90474)
+++
projects/jboss-osgi/trunk/blueprint/impl/src/main/java/org/jboss/osgi/blueprint/reflect/BlueprintMetadata.java 2009-06-19
16:15:26 UTC (rev 90475)
@@ -49,16 +49,14 @@
* @author thomas.diesler(a)jboss.com
* @since 13-May-2009
*/
-public class BlueprintMetadata
+public class BlueprintMetadata extends MetadataImpl
{
- private BlueprintContext context;
-
private TBlueprint tBlueprint;
private Map<String, ComponentMetadata> components = new LinkedHashMap<String,
ComponentMetadata>();
public BlueprintMetadata(BlueprintContext context, TBlueprint tBlueprint)
{
- this.context = context;
+ super(context, null);
this.tBlueprint = tBlueprint;
}