[jboss-cvs] JBossAS SVN: r80931 - trunk/connector/src/main/org/jboss/resource/metadata/mcf.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Nov 13 08:17:56 EST 2008


Author: emuckenhuber
Date: 2008-11-13 08:17:55 -0500 (Thu, 13 Nov 2008)
New Revision: 80931

Modified:
   trunk/connector/src/main/org/jboss/resource/metadata/mcf/LoaderRepositoryAdapter.java
Log:
[JBAS-3768] marshal loader-repository

Modified: trunk/connector/src/main/org/jboss/resource/metadata/mcf/LoaderRepositoryAdapter.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/metadata/mcf/LoaderRepositoryAdapter.java	2008-11-13 12:44:19 UTC (rev 80930)
+++ trunk/connector/src/main/org/jboss/resource/metadata/mcf/LoaderRepositoryAdapter.java	2008-11-13 13:17:55 UTC (rev 80931)
@@ -22,15 +22,18 @@
 package org.jboss.resource.metadata.mcf;
 
 import javax.xml.bind.annotation.adapters.XmlAdapter;
+import javax.xml.parsers.DocumentBuilderFactory;
 
 import org.jboss.mx.loading.LoaderRepositoryFactory;
 import org.jboss.mx.loading.LoaderRepositoryFactory.LoaderRepositoryConfig;
+import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
 /**
  * A ServiceMetaDataAdapter.
  * 
  * @author <a href="weston.price at jboss.org">Weston Price</a>
+ * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision: 1.1 $
  */
 public class LoaderRepositoryAdapter extends XmlAdapter<Object, LoaderRepositoryConfig>
@@ -43,9 +46,24 @@
    }
 
    @Override
-   public Element marshal(LoaderRepositoryConfig arg0) throws Exception
+   public Element marshal(LoaderRepositoryConfig config) throws Exception
    {
-      // TODO implement marshalling
-      return null;
+      if(config == null)
+         return null;
+      
+      // TODO: move this to a separate 'marshaler' 
+      Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
+      // <loader-repository>
+      Element loaderRepository = document.createElement("loader-repository");
+      loaderRepository.setAttribute("loaderRepositoryClass", config.repositoryClassName);
+      loaderRepository.setTextContent(config.repositoryName.getCanonicalName());
+      // <loader-repository-config>
+      Element loaderRepositoryConfig = document.createElement("loader-repository-config");
+      loaderRepositoryConfig.setAttribute("configParserClass", config.configParserClassName);
+      loaderRepositoryConfig.setTextContent(config.repositoryConfig);
+      // Append <loader-repository-config/>
+      loaderRepository.appendChild(loaderRepositoryConfig);
+      //
+      return loaderRepository;
    }
 }




More information about the jboss-cvs-commits mailing list