You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2010/02/17 02:30:14 UTC
svn commit: r910793 [1/2] - in /geronimo/server/trunk:
framework/buildsupport/car-maven-plugin/
framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/
framework/configs/ framework/configs/client-system/src/main/hist...
Author: djencks
Date: Wed Feb 17 01:30:12 2010
New Revision: 910793
URL: http://svn.apache.org/viewvc?rev=910793&view=rev
Log:
GERONIMO-4971 include obr repository.xml in every plugin, and install it into an obr instance when the plugin is installed. Also update the aries plugin and build it.
Added:
geronimo/server/trunk/framework/modules/geronimo-obr/
geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Resource.java (with props)
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/xsd/
geronimo/server/trunk/framework/modules/geronimo-obr/src/main/xsd/SchemaObr.xsd (with props)
Modified:
geronimo/server/trunk/framework/buildsupport/car-maven-plugin/pom.xml
geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/AbstractCarMojo.java
geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/PluginMetadataGeneratorMojo.java
geronimo/server/trunk/framework/configs/client-system/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/geronimo-gbean-deployer-bootstrap/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/geronimo-gbean-deployer/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/gshell-geronimo/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/j2ee-system/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/jsr88-cli/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/jsr88-deploymentfactory/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/karaf-framework/pom.xml
geronimo/server/trunk/framework/configs/online-deployer/src/main/history/dependencies.xml
geronimo/server/trunk/framework/configs/pom.xml
geronimo/server/trunk/framework/configs/shutdown/src/main/history/dependencies.xml
geronimo/server/trunk/framework/modules/geronimo-system/pom.xml
geronimo/server/trunk/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/DependencyManager.java
geronimo/server/trunk/framework/modules/pom.xml
geronimo/server/trunk/plugins/aries/aries-deployer/pom.xml
geronimo/server/trunk/plugins/aries/aries-deployer/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/aries/geronimo-aries-builder/src/main/java/org/apache/geronimo/aries/builder/AriesAppConfigBuilder.java
geronimo/server/trunk/plugins/axis2/axis2/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/connector-1_6/connector-deployer-1_6/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/j2ee/j2ee-server/pom.xml
geronimo/server/trunk/plugins/openjpa2/openjpa2/src/main/history/dependencies.xml
geronimo/server/trunk/plugins/pom.xml
geronimo/server/trunk/plugins/wab/web-jetty-server/pom.xml
Modified: geronimo/server/trunk/framework/buildsupport/car-maven-plugin/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/buildsupport/car-maven-plugin/pom.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/buildsupport/car-maven-plugin/pom.xml (original)
+++ geronimo/server/trunk/framework/buildsupport/car-maven-plugin/pom.xml Wed Feb 17 01:30:12 2010
@@ -87,6 +87,12 @@
<artifactId>geronimo-system</artifactId>
<version>${version}</version>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.geronimo.framework</groupId>
+ <artifactId>geronimo-obr</artifactId>
+ <version>${version}</version>
+ </dependency>
<dependency>
<groupId>org.apache.geronimo.framework</groupId>
Modified: geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/AbstractCarMojo.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/AbstractCarMojo.java?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/AbstractCarMojo.java (original)
+++ geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/AbstractCarMojo.java Wed Feb 17 01:30:12 2010
@@ -25,6 +25,7 @@
import java.io.IOException;
import java.util.Collections;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
@@ -105,7 +106,7 @@
protected File basedir;
protected Set<Artifact> dependencyArtifacts;
- protected Map<Artifact, Set<Artifact>> localDependencies;
+ protected Set<Artifact> localDependencies;
/**
@@ -333,7 +334,7 @@
Scanner scanner = new Scanner();
scanner.scan(rootNode, useTransitiveDependencies);
- localDependencies = scanner.localDependencies;
+ localDependencies = scanner.localDependencies.keySet();
treeListing = scanner.getLog();
}
@@ -371,6 +372,10 @@
if (useMavenDependencies == null || !useMavenDependencies.isValue()) {
dependencies.addAll(dependencyTypes);
+ localDependencies = new HashSet<Artifact>();
+ for (DependencyType dependency: dependencies) {
+ localDependencies.add(geronimoToMavenArtifact(dependency.toArtifact()));
+ }
} else {
Map<String, DependencyType> explicitDependencyMap = new HashMap<String, DependencyType>();
for (DependencyType dependency : dependencyTypes) {
@@ -379,25 +384,15 @@
getDependencies(project, useMavenDependencies.isUseTransitiveDependencies());
- for (Map.Entry<Artifact, Set<Artifact>> entry : localDependencies.entrySet()) {
- dependencies.add(toDependencyType(entry.getKey(), explicitDependencyMap, localDependencies, useMavenDependencies.isIncludeVersion(), includeImport));
-// Artifact artifact = entry.getKey();
-// DependencyType explicitDependency = explicitDependencyMap.get(getKey(artifact));
-// DependencyType dependency = toDependencyType(artifact, useMavenDependencies.isIncludeVersion(), explicitDependency, includeImport);
-// for (Artifact parent : entry.getValue()) {
-// dependency.getDependency().add(toDependencyType(parent, true, null, false));
-// }
-// dependencies.add(dependency);
-// for (Artifact artifact : localDependencies) {
-// Dependency explicitDependency = explicitDependencyMap.get(getKey(artifact));
-// dependencies.add(toDependency(artifact, useMavenDependencies.isIncludeVersion(), explicitDependency, includeImport));
+ for (Artifact entry : localDependencies) {
+ dependencies.add(toDependencyType(entry, explicitDependencyMap, useMavenDependencies.isIncludeVersion(), includeImport));
}
}
return dependencies;
}
- DependencyType toDependencyType(Artifact artifact, Map<String, DependencyType> explicitDependencyMap, Map<Artifact, Set<Artifact>> localDependencies, boolean includeVersion, boolean includeImport) {
+ DependencyType toDependencyType(Artifact artifact, Map<String, DependencyType> explicitDependencyMap, boolean includeVersion, boolean includeImport) {
DependencyType explicitDependency = explicitDependencyMap.get(getKey(artifact));
DependencyType dependency = toDependencyType(artifact, includeVersion, explicitDependency, includeImport);
return dependency;
Modified: geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/PluginMetadataGeneratorMojo.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/PluginMetadataGeneratorMojo.java?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/PluginMetadataGeneratorMojo.java (original)
+++ geronimo/server/trunk/framework/buildsupport/car-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/car/PluginMetadataGeneratorMojo.java Wed Feb 17 01:30:12 2010
@@ -24,12 +24,21 @@
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.StringReader;
+import java.net.URI;
import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
import java.util.LinkedHashSet;
+import java.util.Set;
+
+import javax.xml.bind.JAXBException;
import org.apache.geronimo.kernel.config.InvalidConfigException;
import org.apache.geronimo.kernel.config.NoSuchConfigException;
+import org.apache.geronimo.kernel.repository.Artifact;
+import org.apache.geronimo.kernel.repository.Maven2Repository;
+import org.apache.geronimo.kernel.repository.Repository;
+import org.apache.geronimo.obr.GeronimoOBRGBean;
import org.apache.geronimo.system.plugin.model.PluginXmlUtil;
import org.apache.geronimo.system.plugin.model.ArtifactType;
import org.apache.geronimo.system.plugin.model.LicenseType;
@@ -83,6 +92,14 @@
protected String pluginMetadataFileName = null;
/**
+ * Name of generated obr repository.xml file.
+ *
+ * @parameter default-value="OSGI-INF/obr/repository.xml"
+ * @required
+ */
+ protected String obrFileName;
+
+ /**
* Full path of generated plugin metadata file.
*
* @ parameter expression="${project.build.directory}/resources/META-INF/geronimo-plugin.xml"
@@ -247,6 +264,20 @@
} catch (Exception e) {
throw new MojoExecutionException("Could not create plugin metadata", e);
}
+
+ try {
+//generate obr repository.xml
+ File obr = new File(targetDir.toURI().resolve(obrFileName));
+ obr.getParentFile().mkdirs();
+ Set<Artifact> artifacts = new HashSet<Artifact>();
+ for (org.apache.maven.artifact.Artifact artifact: localDependencies) {
+ artifacts.add(mavenToGeronimoArtifact(artifact));
+ }
+ Repository repo = new Maven2Repository(new File(getArtifactRepository().getBasedir()));
+ GeronimoOBRGBean.generateOBR(project.getName(), artifacts, repo, obr);
+ } catch (Exception e) {
+ throw new MojoExecutionException("Could not construct obr repository.xml", e);
+ }
}
private void addDependencies(PluginArtifactType instance) throws InvalidConfigException, IOException, NoSuchConfigException, InvalidDependencyVersionException, ArtifactResolutionException, ProjectBuildingException, MojoExecutionException {
Modified: geronimo/server/trunk/framework/configs/client-system/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/client-system/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/client-system/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/client-system/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -18,6 +18,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.configadmin</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/geronimo-gbean-deployer-bootstrap/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/geronimo-gbean-deployer-bootstrap/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/geronimo-gbean-deployer-bootstrap/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/geronimo-gbean-deployer-bootstrap/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<plugin-artifact xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3" xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2">
+<plugin-artifact xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3">
<module-id>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>geronimo-gbean-deployer-bootstrap</artifactId>
@@ -13,6 +13,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/geronimo-gbean-deployer/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/geronimo-gbean-deployer/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/geronimo-gbean-deployer/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/geronimo-gbean-deployer/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<plugin-artifact xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3" xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2">
+<plugin-artifact xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3">
<module-id>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>geronimo-gbean-deployer</artifactId>
@@ -8,6 +8,11 @@
</module-id>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/gshell-geronimo/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/gshell-geronimo/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/gshell-geronimo/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/gshell-geronimo/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<plugin-artifact xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3" xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2">
+<plugin-artifact xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3">
<module-id>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>gshell-geronimo</artifactId>
@@ -28,6 +28,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/j2ee-system/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/j2ee-system/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/j2ee-system/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/j2ee-system/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -18,6 +18,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.configadmin</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/jsr88-cli/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/jsr88-cli/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/jsr88-cli/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/jsr88-cli/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<plugin-artifact xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3" xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2">
+<plugin-artifact xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3">
<module-id>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>jsr88-cli</artifactId>
@@ -18,6 +18,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/jsr88-deploymentfactory/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/jsr88-deploymentfactory/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/jsr88-deploymentfactory/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/jsr88-deploymentfactory/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -13,6 +13,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/karaf-framework/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/karaf-framework/pom.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/karaf-framework/pom.xml (original)
+++ geronimo/server/trunk/framework/configs/karaf-framework/pom.xml Wed Feb 17 01:30:12 2010
@@ -117,8 +117,8 @@
</dependency>
<dependency>
- <groupId>org.apache.geronimo.bundles</groupId>
- <artifactId>karaf-client</artifactId>
+ <groupId>org.apache.felix.karaf</groupId>
+ <artifactId>org.apache.felix.karaf.client</artifactId>
<version>${felix.karaf.version}</version>
<exclusions>
<exclusion>
@@ -257,8 +257,8 @@
<artifactId>org.apache.felix.karaf.main</artifactId>
</dependency>
<dependency>
- <groupId>org.apache.geronimo.bundles</groupId>
- <artifactId>karaf-client</artifactId>
+ <groupId>org.apache.felix.karaf</groupId>
+ <artifactId>org.apache.felix.karaf.client</artifactId>
</dependency>
<!--<dependency>-->
<!--<groupId>org.apache.felix.karaf.deployer</groupId>-->
@@ -585,8 +585,8 @@
<destFileName>karaf.jar</destFileName>
</artifactItem>
<artifactItem>
- <groupId>org.apache.geronimo.bundles</groupId>
- <artifactId>karaf-client</artifactId>
+ <groupId>org.apache.felix.karaf</groupId>
+ <artifactId>org.apache.felix.karaf.client</artifactId>
<outputDirectory>target/dependencies/lib</outputDirectory>
<destFileName>karaf-client.jar</destFileName>
</artifactItem>
Modified: geronimo/server/trunk/framework/configs/online-deployer/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/online-deployer/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/online-deployer/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/online-deployer/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -18,6 +18,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Modified: geronimo/server/trunk/framework/configs/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/pom.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/pom.xml (original)
+++ geronimo/server/trunk/framework/configs/pom.xml Wed Feb 17 01:30:12 2010
@@ -54,7 +54,7 @@
<module>gshell-geronimo</module>
<module>jmx-security</module>
<!--<module>geronimo-boilerplate</module>-->
- <module>karaf-framework</module>
+ <module>karaf-framework-aries-blueprint</module>
</modules>
<build>
Modified: geronimo/server/trunk/framework/configs/shutdown/src/main/history/dependencies.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/shutdown/src/main/history/dependencies.xml?rev=910793&r1=910792&r2=910793&view=diff
==============================================================================
--- geronimo/server/trunk/framework/configs/shutdown/src/main/history/dependencies.xml (original)
+++ geronimo/server/trunk/framework/configs/shutdown/src/main/history/dependencies.xml Wed Feb 17 01:30:12 2010
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<plugin-artifact xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3" xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2">
+<plugin-artifact xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3">
<module-id>
<groupId>org.apache.geronimo.framework</groupId>
<artifactId>shutdown</artifactId>
@@ -18,6 +18,11 @@
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <type>jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<type>jar</type>
</dependency>
Added: geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml Wed Feb 17 01:30:12 2010
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+
+<!-- $Rev$ $Date$ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.geronimo.framework</groupId>
+ <artifactId>modules</artifactId>
+ <version>3.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>geronimo-obr</artifactId>
+ <packaging>bundle</packaging>
+ <name>Geronimo Framework, Modules :: OBR</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.geronimo.framework</groupId>
+ <artifactId>geronimo-kernel</artifactId>
+ <version>${version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.geronimo.framework</groupId>
+ <artifactId>geronimo-system</artifactId>
+ <version>${version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.bundlerepository</artifactId>
+ <version>1.5.0-SNAPSHOT</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.apache.felix.shell</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>xmlpull</groupId>
+ <artifactId>xmlpull</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>net.sf.kxml</groupId>
+ <artifactId>kxml2</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Export-Package>org.apache.geronimo.obr*</Export-Package>
+ <Bundle-Activator>org.apache.geronimo.obr.Activator</Bundle-Activator>
+ </instructions>
+ </configuration>
+ </plugin>
+<!--
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jaxb2-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>xjc</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <packageName>org.apache.geronimo.obr.model</packageName>
+ <extension>true</extension>
+ </configuration>
+ </plugin>
+-->
+ </plugins>
+ </build>
+
+</project>
+
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/pom.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,135 @@
+/**
+ * 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.geronimo.obr;
+
+import java.io.File;
+import java.util.List;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.Unmarshaller;
+
+import org.apache.geronimo.kernel.osgi.BundleDescription;
+import org.apache.geronimo.obr.model.Resource;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceReference;
+import org.osgi.service.obr.Repository;
+import org.osgi.service.obr.RepositoryAdmin;
+import org.osgi.service.obr.Resolver;
+import org.osgi.util.tracker.ServiceTracker;
+import org.osgi.util.tracker.ServiceTrackerCustomizer;
+
+public class Activator implements BundleActivator {
+
+ public void start(final BundleContext context) throws Exception {
+ ServiceTracker tracker = new ServiceTracker(context, RepositoryAdmin.class.getName(),
+ new ServiceTrackerCustomizer() {
+
+ public Object addingService(ServiceReference reference) {
+ RepositoryAdmin repositoryAdmin = (RepositoryAdmin) context.getService(reference);
+
+// System.out.println("GOT REPO");
+// File f = new File("/home/gawor/.m2/repository/repository.xml");
+// try {
+// repositoryAdmin.addRepository(f.toURI().toURL());
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+
+ for (Repository repo : repositoryAdmin.listRepositories()) {
+ System.out.println(repo.getName() + " " + repo.getURL());
+ }
+
+ org.apache.geronimo.obr.model.Repository r = new org.apache.geronimo.obr.model.Repository();
+ r.setName("foo");
+
+ for (Bundle b : context.getBundles()) {
+ BundleDescription desc = new BundleDescription(b.getHeaders());
+ ResourceBuilder builder = new ResourceBuilder(desc);
+
+ Resource resource = builder.createResource();
+ if (resource != null) {
+ r.getResource().add(resource);
+ }
+
+ /*
+ List<BundleDescription.Package> imports = desc.getImportPackage();
+ for (BundleDescription.Package importPackage : imports) {
+ String filter = "(symbolicname=" + desc.getSymbolicName() + ")";
+ Resource[] resources = repositoryAdmin.discoverResources(filter);
+ if (resources != null && resources.length > 0) {
+ System.out.println("Results found for: " + filter);
+ for (Resource r : resources) {
+ //System.out.println(r.getId() + " " + r.getSymbolicName() + " " + r.getURL());
+ Resolver resolver = repositoryAdmin.resolver();
+ resolver.add(r);
+ if (resolver.resolve()) {
+ System.out.println("Resolved");
+ } else {
+ System.out.println("Unresolved: " + resolver.getReason(r));
+ }
+ }
+ } else {
+ System.out.println("Results not found for: " + filter);
+ }
+ }
+ */
+ }
+
+// try {
+// JAXBContext context = JAXBContext.newInstance(org.apache.geronimo.obr.model.Repository.class);
+// Marshaller marshaller = context.createMarshaller();
+// marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
+// marshaller.marshal(r, new File("/home/gawor/repo.xml"));
+//
+//
+// Unmarshaller unmarshaller = context.createUnmarshaller();
+// org.apache.geronimo.obr.model.Repository rr = (org.apache.geronimo.obr.model.Repository) unmarshaller.unmarshal(f);
+// for (Resource rrr : rr.getResource()) {
+// System.out.println(rrr.getId() + " " + rrr.getPresentationname() + " " + rrr.getSymbolicname() + " " + rrr.getDescription());
+// }
+//
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+ return reference;
+ }
+
+ public void modifiedService(ServiceReference arg0, Object arg1) {
+ }
+
+ public void removedService(ServiceReference arg0, Object arg1) {
+ }
+
+ });
+
+ tracker.open();
+
+ }
+
+ private <T> T getService(BundleContext context, Class<T> name) {
+ ServiceReference ref = context.getServiceReference(name.getName());
+ return (ref == null) ? null : (T) context.getService(ref);
+ }
+
+ public void stop(BundleContext context) throws Exception {
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/Activator.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,177 @@
+/**
+ * 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.geronimo.obr;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+import java.util.StringTokenizer;
+import java.util.jar.JarFile;
+import java.util.jar.Manifest;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Marshaller;
+
+import org.apache.geronimo.gbean.GBeanLifecycle;
+import org.apache.geronimo.gbean.annotation.GBean;
+import org.apache.geronimo.gbean.annotation.ParamAttribute;
+import org.apache.geronimo.gbean.annotation.ParamReference;
+import org.apache.geronimo.gbean.annotation.ParamSpecial;
+import org.apache.geronimo.gbean.annotation.SpecialAttributeType;
+import org.apache.geronimo.kernel.osgi.BundleDescription;
+import org.apache.geronimo.kernel.repository.Artifact;
+import org.apache.geronimo.kernel.repository.ListableRepository;
+import org.apache.geronimo.obr.model.Repository;
+import org.apache.geronimo.obr.model.Resource;
+import org.apache.geronimo.system.serverinfo.ServerInfo;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceReference;
+import org.osgi.service.obr.RepositoryAdmin;
+
+@GBean
+public class GeronimoOBRGBean implements GBeanLifecycle {
+
+ private BundleContext bundleContext;
+ private ListableRepository repository;
+ private File obrFile;
+ private List<URL> repositories;
+
+ public GeronimoOBRGBean(@ParamReference(name = "Repository", namingType = "Repository") ListableRepository repository,
+ @ParamReference(name = "ServerInfo") ServerInfo serverInfo,
+ @ParamSpecial(type = SpecialAttributeType.bundleContext) BundleContext bundleContext,
+ @ParamAttribute(name = "repositoryList") String repositoryList) throws Exception {
+ this.repository = repository;
+ this.bundleContext = bundleContext;
+ this.obrFile = serverInfo.resolveServer("var/obr.xml");
+ this.repositories = parseRepositories(repositoryList);
+ }
+
+ private static List<URL> parseRepositories(String repositoryList) throws MalformedURLException {
+ List<URL> list = new ArrayList<URL>();
+ if (repositoryList != null) {
+ StringTokenizer tokenizer = new StringTokenizer(repositoryList, ",");
+ while (tokenizer.hasMoreElements()) {
+ String token = (String) tokenizer.nextElement();
+ list.add(new URL(token.trim()));
+ }
+ }
+ return list;
+ }
+
+ private void generateOBR() throws Exception {
+
+ String obrName = "Geronimo OBR Repository";
+
+ org.apache.geronimo.kernel.repository.Repository geronimoRepository = repository;
+ Set<Artifact> artifacts = repository.list();
+ generateOBR(obrName, artifacts, geronimoRepository, obrFile);
+ }
+
+ public static void generateOBR(String obrName, Set<Artifact> artifacts, org.apache.geronimo.kernel.repository.Repository geronimoRepository, File obrFile) throws IOException, JAXBException {
+ Repository repo = generateOBRModel(obrName, geronimoRepository, artifacts);
+ marshallOBRModel(repo, obrFile);
+ }
+
+ public static void marshallOBRModel(Repository repo, File obrFile) throws JAXBException {
+ JAXBContext context = JAXBContext.newInstance(Repository.class);
+ Marshaller marshaller = context.createMarshaller();
+ marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
+ marshaller.marshal(repo, obrFile);
+ }
+
+ public static Repository generateOBRModel(String obrName, org.apache.geronimo.kernel.repository.Repository geronimoRepository, Set<Artifact> artifacts) throws IOException {
+ Repository repo = new Repository();
+ repo.setName(obrName);
+ for (Artifact artifact : artifacts) {
+ File location = geronimoRepository.getLocation(artifact);
+ Manifest mf = null;
+ if (location.isFile()) {
+ JarFile file = new JarFile(location);
+ try {
+ mf = file.getManifest();
+ } finally {
+ try { file.close(); } catch (IOException ignore) {}
+ }
+
+ } else if (location.isDirectory()) {
+ File mfFile = new File(location, JarFile.MANIFEST_NAME);
+ FileInputStream in = new FileInputStream(mfFile);
+ try {
+ mf = new Manifest(in);
+ } finally {
+ try { in.close(); } catch (IOException ignore) {}
+ }
+ } else {
+ continue;
+ }
+
+ if (mf == null) {
+ continue;
+ }
+
+ BundleDescription desc = new BundleDescription(mf);
+ ResourceBuilder builder = new ResourceBuilder(desc);
+
+ Resource resource = builder.createResource();
+ if (resource != null) {
+ resource.setUri(getURL(artifact));
+ if (location.isFile()) {
+ resource.setSize(location.length());
+ }
+ repo.getResource().add(resource);
+ } else {
+ System.out.println("Warning: Artifact " + artifact + " is not a bundle.");
+ }
+ }
+ return repo;
+ }
+
+ private static String getURL(Artifact artifact) {
+ return "mvn:" + artifact.getGroupId() + "/" + artifact.getArtifactId() + "/" + artifact.getVersion() + ("jar".equals(artifact.getType())? "": "/" + artifact.getType());
+ }
+
+ private void registerOBR() throws Exception {
+ ServiceReference ref = bundleContext.getServiceReference(RepositoryAdmin.class.getName());
+ RepositoryAdmin repositoryAdmin = (RepositoryAdmin) bundleContext.getService(ref);
+
+ repositoryAdmin.addRepository(obrFile.toURI().toURL());
+
+ for (URL repository : repositories) {
+ repositoryAdmin.addRepository(repository);
+ }
+
+ bundleContext.ungetService(ref);
+ }
+
+ public void doStart() throws Exception {
+ generateOBR();
+ registerOBR();
+ }
+
+ public void doStop() throws Exception {
+ }
+
+ public void doFail() {
+ }
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/GeronimoOBRGBean.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,198 @@
+/**
+ * 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.geronimo.obr;
+
+import java.util.List;
+
+import org.apache.geronimo.kernel.osgi.BundleDescription;
+import org.apache.geronimo.kernel.osgi.VersionRange;
+import org.apache.geronimo.obr.model.Capability;
+import org.apache.geronimo.obr.model.P;
+import org.apache.geronimo.obr.model.Require;
+import org.apache.geronimo.obr.model.Resource;
+import org.osgi.framework.Constants;
+
+public class ResourceBuilder {
+
+ private BundleDescription bundleDescription;
+
+ public ResourceBuilder(BundleDescription bundleDescription) {
+ this.bundleDescription = bundleDescription;
+ }
+
+ public Resource createResource() {
+
+ BundleDescription.SymbolicName symbolicName = bundleDescription.getSymbolicName();
+ if (symbolicName == null) {
+ // not a bundle
+ return null;
+ }
+
+ Resource resource = new Resource();
+ resource.setId(String.valueOf(System.currentTimeMillis()));
+ resource.setSymbolicname(symbolicName.getName());
+
+ // Convert bundle manifest header attributes to resource properties.
+ convertAttributesToProperties(resource);
+
+ // Convert Import-Package declarations into requirements.
+ convertImportPackageToRequirement(resource);
+
+ // Convert Require-Bundle to requirements.
+ convertRequireBundleToRequirement(resource);
+
+ // Convert Fragment-Host to requirement/extend.
+ convertFragmentHostToExtends(resource);
+
+ // Convert bundle to capability
+ convertBundleToCapability(resource, symbolicName);
+
+ // Convert Export-Package declarations into capabilities.
+ convertExportPackageToCapability(resource);
+
+ return resource;
+ }
+
+ private String getProperty(String name) {
+ return (String) bundleDescription.getHeaders().get(name);
+ }
+
+ private void convertAttributesToProperties(Resource resource) {
+ String bundleName = getProperty(Constants.BUNDLE_NAME);
+ if (bundleName == null) {
+ bundleName = resource.getSymbolicname();
+ }
+ resource.setPresentationname(bundleName);
+
+ resource.setVersion(getProperty(Constants.BUNDLE_VERSION));
+ resource.setDescription(getProperty(Constants.BUNDLE_DESCRIPTION));
+ resource.setDocumentation(getProperty(Constants.BUNDLE_DOCURL));
+ resource.setSource(getProperty("Bundle-Source"));
+ resource.setLicense(getProperty("Bundle-License"));
+
+ // resource.setCopyright(getProperty(Constants.BUNDLE_COPYRIGHT));
+ }
+
+ private void convertImportPackageToRequirement(Resource resource) {
+ List<BundleDescription.ImportPackage> imports = bundleDescription.getImportPackage();
+ for (BundleDescription.ImportPackage importPackage : imports) {
+ Require require = new Require();
+ require.setMultiple(false);
+ require.setOptional(importPackage.isOptional());
+ require.setName("package");
+ require.setContent("Import-Package: " + importPackage.getName());
+
+ VersionRange range = importPackage.getVersionRange();
+ String versionFilter = getVersionFilter(range);
+ require.setFilter("(&(package=" + importPackage.getName() + ")" + versionFilter + ")");
+
+ resource.getRequire().add(require);
+ }
+ }
+
+ private void convertRequireBundleToRequirement(Resource resource) {
+ List<BundleDescription.RequireBundle> requireBundles = bundleDescription.getRequireBundle();
+ for (BundleDescription.RequireBundle requireBundle : requireBundles) {
+ Require require = new Require();
+ require.setMultiple(false);
+ require.setOptional(requireBundle.isOptional());
+ require.setName("bundle");
+ require.setContent("Require-Bundle: " + requireBundle.getName());
+
+ VersionRange range = requireBundle.getVersionRange();
+ String versionExpression = getVersionFilter(range);
+ require.setFilter("(&(symbolicname=" + requireBundle.getName() + ")" + versionExpression + ")");
+
+ resource.getRequire().add(require);
+ }
+ }
+
+ private void convertFragmentHostToExtends(Resource resource) {
+ BundleDescription.FragmentHost fragment = bundleDescription.getFragmentHost();
+ if (fragment != null) {
+ /*
+ * In RFC 112 the Fragment-Host is represented as a "<extend/>" element
+ * not a "<require extend="true"/>" element.
+ */
+ Require require = new Require();
+ require.setExtend(true);
+ require.setMultiple(false);
+ require.setOptional(false);
+ require.setName("bundle");
+ require.setContent("Fragment-Host: " + fragment.getName());
+
+ VersionRange range = fragment.getVersionRange();
+ String versionExpression = getVersionFilter(range);
+ require.setFilter("(&(symbolicname=" + fragment.getName() + ")" + versionExpression + ")");
+
+ resource.getRequire().add(require);
+ }
+ }
+
+ private void convertExportPackageToCapability(Resource resource) {
+ List<BundleDescription.ExportPackage> exports = bundleDescription.getExportPackage();
+ for (BundleDescription.ExportPackage exportPackage : exports) {
+ Capability cap = new Capability();
+ cap.setName("package");
+ cap.getP().add(createP("package", null, exportPackage.getName()));
+ cap.getP().add(createP("version", "version", exportPackage.getVersion().toString()));
+ resource.getCapability().add(cap);
+ }
+ }
+
+ private void convertBundleToCapability(Resource resource, BundleDescription.SymbolicName symbolicName) {
+ Capability cap = new Capability();
+ cap.setName("bundle");
+
+ cap.getP().add(createP("symbolicname", null, symbolicName.getName()));
+ cap.getP().add(createP("version", "version", bundleDescription.getVersion().toString()));
+ cap.getP().add(createP("manifestversion", "version", (String) bundleDescription.getHeaders().get(Constants.BUNDLE_MANIFESTVERSION)));
+
+ String attachment = symbolicName.getDirectives().get("fragment-attachment");
+ if (attachment != null) {
+ cap.getP().add(createP("fragment-attachment", null, attachment));
+ }
+
+ String singleton = symbolicName.getDirectives().get("singleton");
+ if (singleton != null) {
+ cap.getP().add(createP("singleton", null, singleton));
+ }
+
+ resource.getCapability().add(cap);
+ }
+
+ private P createP(String name, String type, String value) {
+ P p = new P();
+ p.setN(name);
+ p.setV(value);
+ p.setT(type);
+ return p;
+ }
+
+ private String getVersionFilter(VersionRange range) {
+ String low = range.isLowInclusive() ? "(version>=" + range.getLow() + ")"
+ : "(!(version<=" + range.getLow() + "))";
+
+ if (range.getHigh() != null) {
+ String high = range.isHighInclusive() ? "(version<=" + range.getHigh() + ")"
+ : "(!(version>=" + range.getHigh() + "))";
+ return low + high;
+ }
+
+ return low;
+ }
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/ResourceBuilder.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,104 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.3-b01-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.12.17 at 12:58:15 PM EST
+//
+
+
+package org.apache.geronimo.obr.model;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}p" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "p"
+})
+@XmlRootElement(name = "capability")
+public class Capability {
+
+ protected List<P> p;
+ @XmlAttribute(required = true)
+ protected String name;
+
+ /**
+ * Gets the value of the p property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the p property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getP().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link P }
+ *
+ *
+ */
+ public List<P> getP() {
+ if (p == null) {
+ p = new ArrayList<P>();
+ }
+ return this.p;
+ }
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Capability.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,67 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.3-b01-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.12.17 at 12:58:15 PM EST
+//
+
+
+package org.apache.geronimo.obr.model;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute ref="{}id use="required""/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "")
+@XmlRootElement(name = "category")
+public class Category {
+
+ @XmlAttribute(required = true)
+ protected String id;
+
+ /**
+ * Gets the value of the id property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * Sets the value of the id property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setId(String value) {
+ this.id = value;
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Category.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,87 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.3-b01-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.12.17 at 12:58:15 PM EST
+//
+
+
+package org.apache.geronimo.obr.model;
+
+import javax.xml.bind.annotation.XmlRegistry;
+
+
+/**
+ * This object contains factory methods for each
+ * Java content interface and Java element interface
+ * generated in the org.apache.geronimo.obr.model package.
+ * <p>An ObjectFactory allows you to programatically
+ * construct new instances of the Java representation
+ * for XML content. The Java representation of XML
+ * content can consist of schema derived interfaces
+ * and classes representing the binding of schema
+ * type definitions, element declarations and model
+ * groups. Factory methods for each of these are
+ * provided in this class.
+ *
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+
+ /**
+ * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.apache.geronimo.obr.model
+ *
+ */
+ public ObjectFactory() {
+ }
+
+ /**
+ * Create an instance of {@link P }
+ *
+ */
+ public P createP() {
+ return new P();
+ }
+
+ /**
+ * Create an instance of {@link Require }
+ *
+ */
+ public Require createRequire() {
+ return new Require();
+ }
+
+ /**
+ * Create an instance of {@link Resource }
+ *
+ */
+ public Resource createResource() {
+ return new Resource();
+ }
+
+ /**
+ * Create an instance of {@link Capability }
+ *
+ */
+ public Capability createCapability() {
+ return new Capability();
+ }
+
+ /**
+ * Create an instance of {@link Category }
+ *
+ */
+ public Category createCategory() {
+ return new Category();
+ }
+
+ /**
+ * Create an instance of {@link Repository }
+ *
+ */
+ public Repository createRepository() {
+ return new Repository();
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/ObjectFactory.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,121 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.3-b01-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.12.17 at 12:58:15 PM EST
+//
+
+
+package org.apache.geronimo.obr.model;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute ref="{}n use="required""/>
+ * <attribute ref="{}t"/>
+ * <attribute ref="{}v use="required""/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "")
+@XmlRootElement(name = "p")
+public class P {
+
+ @XmlAttribute(required = true)
+ protected String n;
+ @XmlAttribute
+ protected String t;
+ @XmlAttribute(required = true)
+ protected String v;
+
+ /**
+ * Gets the value of the n property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getN() {
+ return n;
+ }
+
+ /**
+ * Sets the value of the n property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setN(String value) {
+ this.n = value;
+ }
+
+ /**
+ * Gets the value of the t property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getT() {
+ return t;
+ }
+
+ /**
+ * Sets the value of the t property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setT(String value) {
+ this.t = value;
+ }
+
+ /**
+ * Gets the value of the v property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getV() {
+ return v;
+ }
+
+ /**
+ * Sets the value of the v property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setV(String value) {
+ this.v = value;
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/P.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,131 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.3-b01-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.12.17 at 12:58:15 PM EST
+//
+
+
+package org.apache.geronimo.obr.model;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}resource" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="lastmodified" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "resource"
+})
+@XmlRootElement(name = "repository")
+public class Repository {
+
+ protected List<Resource> resource;
+ @XmlAttribute
+ protected String lastmodified;
+ @XmlAttribute(required = true)
+ protected String name;
+
+ /**
+ * Gets the value of the resource property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the resource property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getResource().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link Resource }
+ *
+ *
+ */
+ public List<Resource> getResource() {
+ if (resource == null) {
+ resource = new ArrayList<Resource>();
+ }
+ return this.resource;
+ }
+
+ /**
+ * Gets the value of the lastmodified property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getLastmodified() {
+ return lastmodified;
+ }
+
+ /**
+ * Sets the value of the lastmodified property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setLastmodified(String value) {
+ this.lastmodified = value;
+ }
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Repository.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java?rev=910793&view=auto
==============================================================================
--- geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java (added)
+++ geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java Wed Feb 17 01:30:12 2010
@@ -0,0 +1,180 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.3-b01-fcs
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.12.17 at 12:58:15 PM EST
+//
+
+
+package org.apache.geronimo.obr.model;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+
+
+/**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute ref="{}extend use="required""/>
+ * <attribute ref="{}filter use="required""/>
+ * <attribute ref="{}multiple use="required""/>
+ * <attribute ref="{}name use="required""/>
+ * <attribute ref="{}optional use="required""/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "content"
+})
+@XmlRootElement(name = "require")
+public class Require {
+
+ @XmlValue
+ protected String content;
+ @XmlAttribute(required = true)
+ protected boolean extend;
+ @XmlAttribute(required = true)
+ protected String filter;
+ @XmlAttribute(required = true)
+ protected boolean multiple;
+ @XmlAttribute(required = true)
+ protected String name;
+ @XmlAttribute(required = true)
+ protected boolean optional;
+
+ /**
+ * Gets the value of the content property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getContent() {
+ return content;
+ }
+
+ /**
+ * Sets the value of the content property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setContent(String value) {
+ this.content = value;
+ }
+
+ /**
+ * Gets the value of the extend property.
+ *
+ */
+ public boolean isExtend() {
+ return extend;
+ }
+
+ /**
+ * Sets the value of the extend property.
+ *
+ */
+ public void setExtend(boolean value) {
+ this.extend = value;
+ }
+
+ /**
+ * Gets the value of the filter property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFilter() {
+ return filter;
+ }
+
+ /**
+ * Sets the value of the filter property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFilter(String value) {
+ this.filter = value;
+ }
+
+ /**
+ * Gets the value of the multiple property.
+ *
+ */
+ public boolean isMultiple() {
+ return multiple;
+ }
+
+ /**
+ * Sets the value of the multiple property.
+ *
+ */
+ public void setMultiple(boolean value) {
+ this.multiple = value;
+ }
+
+ /**
+ * Gets the value of the name property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Sets the value of the name property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Gets the value of the optional property.
+ *
+ */
+ public boolean isOptional() {
+ return optional;
+ }
+
+ /**
+ * Sets the value of the optional property.
+ *
+ */
+ public void setOptional(boolean value) {
+ this.optional = value;
+ }
+
+}
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/server/trunk/framework/modules/geronimo-obr/src/main/java/org/apache/geronimo/obr/model/Require.java
------------------------------------------------------------------------------
svn:mime-type = text/plain