Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorafinkbein2009-01-14 23:32:55 +0000
committerafinkbein2009-01-14 23:32:55 +0000
commit7f75c4a5a921ad96031c43a270509bb224d06200 (patch)
tree73546fc277f07c092d72a763942fd56f612e86e2
parent8a798a20512ec24a144042e4aa3015bd9c9eec80 (diff)
downloadorg.eclipse.osee-7f75c4a5a921ad96031c43a270509bb224d06200.tar.gz
org.eclipse.osee-7f75c4a5a921ad96031c43a270509bb224d06200.tar.xz
org.eclipse.osee-7f75c4a5a921ad96031c43a270509bb224d06200.zip
-rw-r--r--org.eclipse.osee.framework.resource.management/.classpath7
-rw-r--r--org.eclipse.osee.framework.resource.management/.project28
-rw-r--r--org.eclipse.osee.framework.resource.management/.settings/org.eclipse.pde.core.prefs4
-rw-r--r--org.eclipse.osee.framework.resource.management/META-INF/MANIFEST.MF17
-rw-r--r--org.eclipse.osee.framework.resource.management/OSGI-INF/resource.locator.consumer.xml13
-rw-r--r--org.eclipse.osee.framework.resource.management/OSGI-INF/resource.provider.consumer.xml13
-rw-r--r--org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba7].launch24
-rw-r--r--org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba8].launch24
-rw-r--r--org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql huee1].launch25
-rw-r--r--org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost demo].launch24
-rw-r--r--org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost].launch25
-rw-r--r--org.eclipse.osee.framework.resource.management/build.properties5
-rw-r--r--org.eclipse.osee.framework.resource.management/runOseeServer - postgres.launch25
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Activator.java32
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResource.java51
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceListener.java64
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocator.java40
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorManager.java53
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorProvider.java46
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceManager.java83
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceProvider.java59
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Options.java55
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Resource.java58
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/ResourceLocator.java52
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/StandardOptions.java18
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/EmptyResourceException.java35
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/InvalidLocatorException.java36
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/MalformedLocatorException.java46
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceLocatorManager.java80
-rw-r--r--org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceManager.java153
30 files changed, 1195 insertions, 0 deletions
diff --git a/org.eclipse.osee.framework.resource.management/.classpath b/org.eclipse.osee.framework.resource.management/.classpath
new file mode 100644
index 00000000000..8a8f1668cdc
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/org.eclipse.osee.framework.resource.management/.project b/org.eclipse.osee.framework.resource.management/.project
new file mode 100644
index 00000000000..4fd2e4b8d45
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osee.framework.resource.management</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.osee.framework.resource.management/.settings/org.eclipse.pde.core.prefs b/org.eclipse.osee.framework.resource.management/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 00000000000..9622905cfde
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,4 @@
+#Fri Apr 11 15:30:09 MST 2008
+eclipse.preferences.version=1
+pluginProject.extensions=false
+resolve.requirebundle=false
diff --git a/org.eclipse.osee.framework.resource.management/META-INF/MANIFEST.MF b/org.eclipse.osee.framework.resource.management/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..78fea6f67fc
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Management Plug-in (Incubation)
+Bundle-SymbolicName: org.eclipse.osee.framework.resource.management;singleton:=true
+Bundle-Version: 0.4.0.qualifier
+Bundle-Activator: org.eclipse.osee.framework.resource.management.Activator
+Import-Package: org.eclipse.osgi.util;version="1.1.0",
+ org.osgi.framework;version="1.3.0",
+ org.osgi.service.log;version="1.3",
+ org.osgi.util.tracker;version="1.3.1"
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: Eclipse.org
+Service-Component: OSGI-INF/resource.provider.consumer.xml, OSGI-INF/resource.locator.consumer.xml
+Export-Package: org.eclipse.osee.framework.resource.management,
+ org.eclipse.osee.framework.resource.management.exception
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Require-Bundle: org.eclipse.equinox.ds;bundle-version="1.0.0"
diff --git a/org.eclipse.osee.framework.resource.management/OSGI-INF/resource.locator.consumer.xml b/org.eclipse.osee.framework.resource.management/OSGI-INF/resource.locator.consumer.xml
new file mode 100644
index 00000000000..218cd437023
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OSGI-INF/resource.locator.consumer.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<component name="resource.locator.manager">
+ <implementation class="org.eclipse.osee.framework.resource.management.internal.ResourceLocatorManager"/>
+ <service>
+ <provide interface="org.eclipse.osee.framework.resource.management.IResourceLocatorManager"/>
+ </service>
+ <reference name="resource.locator"
+ interface="org.eclipse.osee.framework.resource.management.IResourceLocatorProvider"
+ bind="addResourceLocatorProvider"
+ unbind="removeResourceLocatorProvider"
+ cardinality="0..n"
+ policy="dynamic"/>
+</component> \ No newline at end of file
diff --git a/org.eclipse.osee.framework.resource.management/OSGI-INF/resource.provider.consumer.xml b/org.eclipse.osee.framework.resource.management/OSGI-INF/resource.provider.consumer.xml
new file mode 100644
index 00000000000..e996acba9b3
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OSGI-INF/resource.provider.consumer.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<component name="resource.manager">
+ <implementation class="org.eclipse.osee.framework.resource.management.internal.ResourceManager"/>
+ <service>
+ <provide interface="org.eclipse.osee.framework.resource.management.IResourceManager"/>
+ </service>
+ <reference name="resource.provider"
+ interface="org.eclipse.osee.framework.resource.management.IResourceProvider"
+ bind="addResourceProvider"
+ unbind="removeResourceProvider"
+ cardinality="0..n"
+ policy="dynamic"/>
+</component> \ No newline at end of file
diff --git a/org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba7].launch b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba7].launch
new file mode 100644
index 00000000000..9c5b6d1c63d
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba7].launch
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.EquinoxLauncher">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bad_container_name" value="\sampleOsgiServletSample\s"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/OseeApplicationServer [lba7]"/>
+<booleanAttribute key="default_auto_start" value="true"/>
+<intAttribute key="default_start_level" value="4"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx1024m&#13;&#10;-XX:MaxPermSize=256m&#13;&#10;-Dosee.log.default=INFO&#13;&#10;-Declipse.ignoreApp=true&#13;&#10;-Dosgi.noShutdown=true&#13;&#10;-Dequinox.ds.debug=true&#13;&#10;-Dorg.osgi.service.http.port=8090&#13;&#10;-Dosee.db.connection.id=oracle7&#13;&#10;-Dosee.application.server.data=/lba_oseex/osee_backup/production_server_data&#10;-Dosee.check.tag.queue.on.startup=true"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="target_bundles" value="org.eclipse.core.databinding@default:default,org.eclipse.equinox.preferences@default:default,javax.servlet.jsp@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.equinox.app@default:default,org.eclipse.swt.gtk.solaris.sparc@default:false,org.eclipse.core.jobs@default:default,org.eclipse.core.runtime@default:default,org.eclipse.jface@default:default,com.ibm.icu@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.util@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.ui@default:default,org.eclipse.help@default:default,org.eclipse.osgi.services@default:default,org.junit4@default:default,org.eclipse.swt@default:default,org.eclipse.equinox.http.servlet@default:default,org.junit@default:default,org.eclipse.equinox.common@default:default,org.eclipse.core.commands@default:default,org.mortbay.jetty@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.ds@default:default,org.eclipse.osgi@:,javax.servlet@default:default,org.apache.commons.logging@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.core.expressions@default:default"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="workspace_bundles" value="org.eclipse.osee.framework.postgresql@default:default,org.eclipse.osee.framework.resource.management.servlet@default:default,org.eclipse.osee.framework.resource.locator.attribute@default:default,org.eclipse.osee.framework.resource.provider.common@default:default,org.eclipse.osee.framework.core.server@default:default,org.postgresql.driver@default:default,org.eclipse.osee.framework.logging@default:default,org.eclipse.osee.framework.jdk.core@default:default,org.eclipse.osee.framework.db.connection@default:default,org.eclipse.osee.framework.artifact.servlet@default:default,org.eclipse.osee.framework.resource.provider.snapshot@default:default,org.eclipse.osee.framework.branch.management.servlet@default:default,xFixIt@default:default,org.eclipse.osee.framework.client.info.servlet@default:default,org.eclipse.osee.framework.search.engine.servlet@default:default,org.eclipse.osee.framework.resource.provider.attribute@default:default,lba.db.connection@default:default,org.eclipse.osee.framework.core@default:default,org.eclipse.osee.framework.session.management.servlet@default:default,org.eclipse.osee.framework.search.engine@default:default,org.eclipse.osee.framework.server.admin@default:default,oracle.driver@default:default,org.eclipse.osee.framework.oracle@default:default,org.eclipse.osee.framework.resource.management@default:default,org.eclipse.osee.framework.server.lookup.servlet@default:default,org.eclipse.osee.framework.branch.management@default:default,org.eclipse.osee.framework.resource.locator.snapshot@default:default"/>
+</launchConfiguration>
diff --git a/org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba8].launch b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba8].launch
new file mode 100644
index 00000000000..4bc6aaa0e2b
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [lba8].launch
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.EquinoxLauncher">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bad_container_name" value="\sampleOsgiServletSample\s"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/OseeApplicationServer [lba8]"/>
+<booleanAttribute key="default_auto_start" value="true"/>
+<intAttribute key="default_start_level" value="4"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx2048m&#13;&#10;-XX:MaxPermSize=256m&#13;&#10;-Dosee.log.default=INFO&#13;&#10;-Declipse.ignoreApp=true&#13;&#10;-Dosgi.noShutdown=true&#13;&#10;-Dequinox.ds.debug=true&#13;&#10;-Dorg.osgi.service.http.port=8091&#13;&#10;-Dosee.db.connection.id=oracle8Client&#13;&#10;-Dosee.application.server.data=/lba_oseex/osee_backup/datastore_lba8_fs&#10;-Dosee.check.tag.queue.on.startup=true"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="target_bundles" value="org.eclipse.core.databinding@default:default,org.eclipse.equinox.preferences@default:default,javax.servlet.jsp@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.equinox.app@default:default,org.eclipse.swt.gtk.solaris.sparc@default:false,org.eclipse.core.jobs@default:default,org.eclipse.core.runtime@default:default,org.eclipse.jface@default:default,com.ibm.icu@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.util@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.ui@default:default,org.eclipse.help@default:default,org.eclipse.osgi.services@default:default,org.junit4@default:default,org.eclipse.swt@default:default,org.eclipse.equinox.http.servlet@default:default,org.junit@default:default,org.eclipse.equinox.common@default:default,org.eclipse.core.commands@default:default,org.mortbay.jetty@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.ds@default:default,org.eclipse.osgi@:,javax.servlet@default:default,org.apache.commons.logging@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.core.expressions@default:default"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="workspace_bundles" value="org.eclipse.osee.framework.postgresql@default:default,org.eclipse.osee.framework.resource.management.servlet@default:default,org.eclipse.osee.framework.resource.locator.attribute@default:default,org.eclipse.osee.framework.resource.provider.common@default:default,org.eclipse.osee.framework.core.server@default:default,org.postgresql.driver@default:default,org.eclipse.osee.framework.logging@default:default,org.eclipse.osee.framework.jdk.core@default:default,org.eclipse.osee.framework.db.connection@default:default,org.eclipse.osee.framework.artifact.servlet@default:default,org.eclipse.osee.framework.resource.provider.snapshot@default:default,org.eclipse.osee.framework.branch.management.servlet@default:default,xFixIt@default:default,org.eclipse.osee.framework.client.info.servlet@default:default,org.eclipse.osee.framework.search.engine.servlet@default:default,org.eclipse.osee.framework.resource.provider.attribute@default:default,lba.db.connection@default:default,org.eclipse.osee.framework.core@default:default,org.eclipse.osee.framework.session.management.servlet@default:default,org.eclipse.osee.framework.search.engine@default:default,org.eclipse.osee.framework.server.admin@default:default,oracle.driver@default:default,org.eclipse.osee.framework.oracle@default:default,org.eclipse.osee.framework.resource.management@default:default,org.eclipse.osee.framework.server.lookup.servlet@default:default,org.eclipse.osee.framework.branch.management@default:default,org.eclipse.osee.framework.resource.locator.snapshot@default:default"/>
+</launchConfiguration>
diff --git a/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql huee1].launch b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql huee1].launch
new file mode 100644
index 00000000000..bdbc3d88fc4
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql huee1].launch
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.EquinoxLauncher">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bad_container_name" value="\sampleOsgiServletSample\s"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/OseeApplicationServer [postgresql huee1]"/>
+<booleanAttribute key="default_auto_start" value="true"/>
+<intAttribute key="default_start_level" value="4"/>
+<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.osee.framework.oracle,oracle.driver"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m&#13;&#10;-XX:MaxPermSize=256m&#13;&#10;-Dosee.log.default=INFO&#13;&#10;-Declipse.ignoreApp=true&#13;&#10;-Dosgi.noShutdown=true&#13;&#10;-Dequinox.ds.debug=true&#13;&#10;-Dorg.osgi.service.http.port=8089&#13;&#10;-Dosee.db.connection.id=postgresqlhuee1&#13;&#10;-Dosee.application.server.data=/msa_users/osee/osee_V13/osee_server_data"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="target_bundles" value="org.eclipse.core.databinding@default:default,org.eclipse.equinox.preferences@default:default,javax.servlet.jsp@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.equinox.app@default:default,org.eclipse.swt.gtk.solaris.sparc@default:false,org.eclipse.core.jobs@default:default,org.eclipse.core.runtime@default:default,org.eclipse.jface@default:default,com.ibm.icu@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.util@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.ui@default:default,org.eclipse.help@default:default,org.eclipse.osgi.services@default:default,org.junit4@default:default,org.eclipse.swt@default:default,org.eclipse.equinox.http.servlet@default:default,org.junit@default:default,org.eclipse.equinox.common@default:default,org.eclipse.core.commands@default:default,org.mortbay.jetty@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.ds@default:default,org.eclipse.osgi@:,javax.servlet@default:default,org.apache.commons.logging@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.core.expressions@default:default"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="workspace_bundles" value="org.eclipse.osee.framework.postgresql@default:default,org.eclipse.osee.framework.resource.management.servlet@default:default,org.eclipse.osee.framework.resource.locator.attribute@default:default,org.eclipse.osee.framework.resource.provider.common@default:default,org.eclipse.osee.framework.core.server@default:default,org.postgresql.driver@default:default,org.eclipse.osee.framework.logging@default:default,org.eclipse.osee.framework.jdk.core@default:default,org.eclipse.osee.framework.db.connection@default:default,org.eclipse.osee.framework.artifact.servlet@default:default,org.eclipse.osee.framework.resource.provider.snapshot@default:default,org.eclipse.osee.framework.branch.management.servlet@default:default,xFixIt@default:default,org.eclipse.osee.framework.client.info.servlet@default:default,org.eclipse.osee.framework.search.engine.servlet@default:default,org.eclipse.osee.framework.resource.provider.attribute@default:default,lba.db.connection@default:default,org.eclipse.osee.framework.core@default:default,org.eclipse.osee.framework.session.management.servlet@default:default,org.eclipse.osee.framework.search.engine@default:default,org.eclipse.osee.framework.server.admin@default:default,org.eclipse.osee.framework.resource.management@default:default,org.eclipse.osee.framework.server.lookup.servlet@default:default,org.eclipse.osee.framework.branch.management@default:default,org.eclipse.osee.framework.resource.locator.snapshot@default:default"/>
+</launchConfiguration>
diff --git a/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost demo].launch b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost demo].launch
new file mode 100644
index 00000000000..0da572806e9
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost demo].launch
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.EquinoxLauncher">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="automaticAdd" value="false"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bad_container_name" value="\sampleOsgiServletSample\s"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/OseeApplicationServer [postgresql localhost demo]"/>
+<booleanAttribute key="default_auto_start" value="true"/>
+<intAttribute key="default_start_level" value="4"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m&#13;&#10;-XX:MaxPermSize=256m&#13;&#10;-Dosee.log.default=INFO&#13;&#10;-Declipse.ignoreApp=true&#13;&#10;-Dosgi.noShutdown=true&#13;&#10;-Dequinox.ds.debug=true&#13;&#10;-Dorg.osgi.service.http.port=8089&#13;&#10;-Dosee.db.connection.id=postgresqlLocalhost"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="target_bundles" value="org.eclipse.equinox.registry@default:default,org.eclipse.core.jobs@default:default,org.eclipse.equinox.util@default:default,org.eclipse.equinox.common@default:default,org.mortbay.jetty@default:default,org.eclipse.core.runtime@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.osgi@:,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.http.servlet@default:default,javax.servlet@default:default,org.apache.commons.logging@default:default,org.eclipse.osgi.services@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.equinox.ds@default:default,org.eclipse.equinox.app@default:default"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="workspace_bundles" value="org.postgresql.driver@default:default,org.eclipse.osee.framework.artifact.servlet@default:default,org.eclipse.osee.framework.db.connection@default:default,org.eclipse.osee.framework.logging@default:default,org.eclipse.osee.framework.jdk.core@default:default,org.eclipse.osee.demo.db.connection@default:default,org.eclipse.osee.framework.session.management.servlet@default:default,org.eclipse.osee.framework.resource.management@default:default,org.eclipse.osee.framework.resource.management.servlet@default:default,org.eclipse.osee.framework.client.info.servlet@default:default,org.eclipse.osee.framework.resource.locator.attribute@default:default,org.eclipse.osee.framework.resource.provider.snapshot@default:default,org.eclipse.osee.framework.core@default:default,org.eclipse.osee.framework.branch.management.servlet@default:default,org.eclipse.osee.framework.branch.management@default:default,org.eclipse.osee.framework.postgresql@default:default,org.eclipse.osee.framework.resource.locator.snapshot@default:default,org.eclipse.osee.framework.resource.provider.common@default:default,org.eclipse.osee.framework.search.engine.servlet@default:default,org.eclipse.osee.framework.resource.provider.attribute@default:default,org.eclipse.osee.framework.server.admin@default:default,org.eclipse.osee.framework.search.engine@default:default,org.eclipse.osee.framework.core.server@default:default,org.eclipse.osee.framework.server.lookup.servlet@default:default"/>
+</launchConfiguration>
diff --git a/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost].launch b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost].launch
new file mode 100644
index 00000000000..acfdafebfb1
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/OseeApplicationServer [postgresql localhost].launch
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.EquinoxLauncher">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bad_container_name" value="\sampleOsgiServletSample\s"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/OseeApplicationServer [postgresql localhost]"/>
+<booleanAttribute key="default_auto_start" value="true"/>
+<intAttribute key="default_start_level" value="4"/>
+<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.osee.ats.feature.source,lba.utility.ada.editor,lba.ote.projectsets.three.four,org.eclipse.osee.ote.logging,lba.ote.tools,org.eclipse.osee.framework.jdbcodbc,lba.ote.latLong.core,org.eclipse.osee.framework.ui.service.control,org.eclipse.osee.framework.ui.encrypter,mysql.driver.ext,org.eclipse.osee.ote.messaging.dds,org.eclipse.osee.ote.connection.service,org.eclipse.osee.ats,lba.feature.source,org.eclipse.osee.framework.updater,org.eclipse.osee.framework.derby,org.eclipse.osee.ote.ui.host.cmd,lba.ote.result.upload*1.0.0.qualifier,org.eclipse.osee.ats.test,org.eclipse.osee.ote.message,lba.tte,lba.ote.shared.memory,lba.ats.config.v11reu.processor,lba.ats.config.v13.processor,com.lowagie,org.eclipse.osee.framework.ui.skynet.test,org.eclipse.osee.ats.config.demo,org.eclipse.osee.framework.ui.skynet,org.eclipse.osee.framework.skynet.core.test,org.eclipse.osee.framework.svn,lba.help,org.eclipse.osee.framework.antsupport,org.eclipse.osee.framework.feature.source,lba.ote.test.manager,lba.ote.ui.mp.versions,org.eclipse.osee.demo.db.connection,org.eclipse.osee.framework.ui.swt,lba.utility.workspace.status,org.eclipse.osee.framework.ui.admin,lba.utility.count,org.eclipse.osee.ote.core,org.eclipse.osee.ote.define,lba.ote.result.upload*1.0.0.qualifier,lba.ote.server,lba.ats.config.deliverable,lba.ote.crewinput,org.eclipse.osee.framework.jini,org.eclipse.osee.ote.ui.markers,lba.ote.message.support,org.eclipse.osee.ote.ui.define,lba.ote.latLong.client,org.eclipse.osee.framework.skynet.core,lba.ats.config.osee,derby.driver,org.eclipse.osee.define.feature.source,org.eclipse.osee.ote.feature.source,org.eclipse.osee.ote.connection.jini,lba.ats.config.saudi,org.eclipse.osee.ote.connection.service.test,org.eclipse.osee.framework.ui.skynet.zest,org.eclipse.osee.ote.ui.output,lba.ats.config.common.test,lba.utility.feature.source,org.eclipse.osee.ote.ui.message,lba.ats.config.tools,lba.ats.config.process,org.eclipse.osee.framework.templates,lba.define,lba.ote.client.ui,org.eclipse.osee.framework.messaging.event.skynet,lba.ote.core,org.eclipse.osee.framework.ui.jdk,org.eclipse.osee.framework.ui.product,org.eclipse.osee.ote.ui.test.manager,lba.ats.config.common,lba.skynet.config,org.eclipse.osee.define,org.eclipse.osee.ote.ui.test.output,org.eclipse.osee.ote.ui,org.eclipse.osee.framework.oracle,lba.ote.msg.gen,lba.utility.external.editor,lba.framework.ui.skynet,org.eclipse.osee.framework.application.server,org.eclipse.osee.framework.ui.security,lba.ats.config.blk3.mp,lba.ote.client,org.eclipse.osee.ote.client,oracle.driver,lba.ote.autoGen.testGen,org.eclipse.osee.ote.ui.mux,lba.ote.ui.playback,org.eclipse.osee.framework.ui.plugin,org.eclipse.osee.framework.ui.feature.source"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m&#13;&#10;-XX:MaxPermSize=256m&#13;&#10;-Dosee.log.default=INFO&#13;&#10;-Declipse.ignoreApp=false&#13;&#10;-Dosgi.noShutdown=true&#13;&#10;-Dequinox.ds.debug=true&#13;&#10;-Dorg.osgi.service.http.port=8089&#13;&#10;-Dosee.db.connection.id=postgresqlLocalhost"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="target_bundles" value="org.eclipse.core.runtime@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.core.expressions@default:default,org.apache.commons.logging@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.equinox.http.jetty@default:default,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.databinding@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.core.jobs@default:default,org.eclipse.equinox.util@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.common@default:default,org.eclipse.jface@default:default,com.ibm.icu@default:default,org.eclipse.core.contenttype@default:default,org.junit@default:default,javax.servlet.jsp@default:default,org.eclipse.osgi@:,org.eclipse.osgi.services@default:default,org.eclipse.core.commands@default:default,org.mortbay.jetty@default:default,org.eclipse.help@default:default,org.eclipse.equinox.app@default:default,org.eclipse.swt.win32.win32.x86@default:false,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.equinox.ds@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.swt@default:default,org.junit4@default:default,javax.servlet@default:default"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="workspace_bundles" value="org.eclipse.osee.framework.resource.provider.snapshot@default:default,org.eclipse.osee.framework.core.client@default:default,org.eclipse.osee.framework.artifact.servlet@default:default,org.apache.commons.net@default:default,org.eclipse.osee.framework.db.connection@default:default,external.osee.xslt.transform.engine@default:default,org.eclipse.osee.framework.branch.management.servlet@default:default,org.eclipse.osee.framework.resource.common@default:default,org.tigris.subversion.svnant@default:default,org.eclipse.osee.framework.resource.locator.snapshot.test@default:default,org.eclipse.osee.framework.core.server@default:default,org.eclipse.osee.framework.postgresql@default:default,org.eclipse.osee.framework.jdk.core@default:default,org.eclipse.osee.framework.resource.locator.snapshot@default:default,org.eclipse.osee.framework.osgitest@default:default,lba.ats.config.cte@default:default,org.eclipse.zest.layouts@default:default,org.eclipse.osee.framework.resource.locator.attribute@default:default,org.eclipse.osee.framework.client.info.servlet@default:default,org.eclipse.osee.framework.session.management.servlet@default:default,org.eclipse.osee.framework.server.lookup.servlet@default:default,javax.mail.glassfish@default:default,org.apache.commons.lang@default:default,org.eclipse.osee.framework.resource.management@default:default,org.eclipse.osee.framework.resource.provider.common@default:default,org.eclipse.osee.framework.plugin.core@default:default,org.eclipse.osee.framework.resource.management.servlet.test@default:default,org.eclipse.osee.framework.resource.management.test@default:default,org.eclipse.osee.framework.search.engine@default:default,jakarta.commons.net@default:default,org.eclipse.osee.framework.branch.management@default:default,org.eclipse.osee.framework.logging@default:default,org.eclipse.osee.framework.core@default:default,org.eclipse.osee.framework.logging.test@default:default,org.postgresql.driver@default:default,org.eclipse.osee.framework.search.engine.servlet@default:default,org.eclipse.osee.framework.resource.locator.attribute.test@default:default,org.eclipse.osee.framework.search.engine.test@default:default,net.jini@default:default,org.eclipse.nebula.widgets.calendarcombo@default:default,org.eclipse.osee.framework.session.management.servlet.test@default:default,org.eclipse.osee.framework.database@default:default,org.eclipse.osee.framework.resource.provider.attribute@default:default,org.eclipse.osee.framework.resource.management.servlet@default:default,lba.db.connection@default:default,org.eclipse.zest.core@default:default,org.eclipse.osee.framework.server.admin@default:default"/>
+</launchConfiguration>
diff --git a/org.eclipse.osee.framework.resource.management/build.properties b/org.eclipse.osee.framework.resource.management/build.properties
new file mode 100644
index 00000000000..a65755cb2a8
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/build.properties
@@ -0,0 +1,5 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/
diff --git a/org.eclipse.osee.framework.resource.management/runOseeServer - postgres.launch b/org.eclipse.osee.framework.resource.management/runOseeServer - postgres.launch
new file mode 100644
index 00000000000..000ac292995
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/runOseeServer - postgres.launch
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.EquinoxLauncher">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bad_container_name" value="\sampleOsgiServletSample\s"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/runOseeServer - postgres"/>
+<booleanAttribute key="default_auto_start" value="true"/>
+<intAttribute key="default_start_level" value="4"/>
+<stringAttribute key="deselected_workspace_plugins" value="org.eclipse.osee.framework.oracle,oracle.driver"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -console"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Declipse.ignoreApp=true -Dosgi.noShutdown=true -Dorg.osgi.service.http.port=8089 -Dequinox.ds.debug=true -Xmx512m -Dosee.db.connection.id=postgresqlLocalhost"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="target_bundles" value="org.eclipse.core.databinding@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.equinox.app@default:default,org.eclipse.swt.gtk.solaris.sparc@default:false,org.eclipse.core.jobs@default:default,org.eclipse.core.runtime@default:default,org.eclipse.jface@default:default,com.ibm.icu@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.util@default:default,org.eclipse.core.runtime.compatibility.registry@default:false,org.eclipse.core.runtime.compatibility.auth@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.ui@default:default,org.eclipse.help@default:default,org.eclipse.osgi.services@default:default,org.eclipse.swt@default:default,org.eclipse.equinox.http.servlet@default:default,org.junit@default:default,org.eclipse.equinox.common@default:default,org.eclipse.core.commands@default:default,org.mortbay.jetty@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.ds@default:default,org.eclipse.osgi@:,javax.servlet@default:default,org.apache.commons.logging@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.core.expressions@default:default"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="workspace_bundles" value="org.eclipse.osee.framework.postgresql@default:default,org.eclipse.osee.framework.resource.management.servlet@default:default,org.eclipse.osee.framework.resource.locator.attribute@default:default,org.eclipse.osee.framework.resource.provider.common@default:default,org.eclipse.osee.framework.core.server@default:default,org.postgresql.driver@default:default,org.eclipse.osee.framework.logging@default:default,org.eclipse.osee.framework.jdk.core@default:default,org.eclipse.osee.framework.db.connection@default:default,org.eclipse.osee.framework.artifact.servlet@default:default,org.eclipse.osee.framework.resource.provider.snapshot@default:default,org.eclipse.osee.framework.branch.management.servlet@default:default,xFixIt@default:default,org.eclipse.osee.framework.client.info.servlet@default:default,org.eclipse.osee.framework.search.engine.servlet@default:default,org.eclipse.osee.framework.resource.provider.attribute@default:default,lba.db.connection@default:default,org.eclipse.osee.framework.core@default:default,org.eclipse.osee.framework.session.management.servlet@default:default,org.eclipse.osee.framework.search.engine@default:default,org.eclipse.osee.framework.server.admin@default:default,org.eclipse.osee.framework.resource.management@default:default,org.eclipse.osee.framework.server.lookup.servlet@default:default,org.eclipse.osee.framework.branch.management@default:default,org.eclipse.osee.framework.resource.locator.snapshot@default:default"/>
+</launchConfiguration>
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Activator.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Activator.java
new file mode 100644
index 00000000000..f14f598abc7
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Activator.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ }
+
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResource.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResource.java
new file mode 100644
index 00000000000..2c957d6af69
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResource.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URI;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResource {
+
+ /**
+ * Returns an open input stream of the contents of this resource.
+ *
+ * @return an input stream containing the contents of this resource
+ * @throws IOException if this method fails.
+ */
+ public InputStream getContent() throws IOException;
+
+ /**
+ * Returns the absolute URI of this resource, or <code>null</code> if no URI can be determined.
+ *
+ * @return the absolute URI of this resource, or <code>null</code> if no URI can be determined
+ */
+ public URI getLocation();
+
+ /**
+ * Get the name of this resource
+ *
+ * @return name of this resource
+ */
+ public String getName();
+
+ /**
+ * Whether this resource is compressed or not.
+ *
+ * @return <b>true</b> If this resource is compressed. <b>false</b> If this resource is not compressed.
+ */
+ public boolean isCompressed();
+
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceListener.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceListener.java
new file mode 100644
index 00000000000..f2fa0c9420f
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceListener.java
@@ -0,0 +1,64 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResourceListener {
+
+ /**
+ * Event triggered before a resource is deleted
+ *
+ * @param locator
+ */
+ public void onPreDelete(IResourceLocator locator);
+
+ /**
+ * Event triggered after a resource is deleted
+ *
+ * @param locator
+ */
+ public void onPostDelete(IResourceLocator locator);
+
+ /**
+ * Event triggered before a resource is saved
+ *
+ * @param locator
+ * @param options
+ * @param resource
+ */
+ public void onPreSave(IResourceLocator locator, IResource resource, Options options);
+
+ /**
+ * Event triggered after a resource is saved
+ *
+ * @param locator
+ * @param resource
+ * @param options
+ */
+ public void onPostSave(IResourceLocator locator, IResource resource, Options options);
+
+ /**
+ * Event triggered before a resource is acquired
+ *
+ * @param locator
+ */
+ public void onPreAcquire(IResourceLocator locator);
+
+ /**
+ * Event triggered after a resource is acquired
+ *
+ * @param resource
+ */
+ public void onPostAcquire(IResource resource);
+
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocator.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocator.java
new file mode 100644
index 00000000000..6a7693ff903
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocator.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import java.net.URI;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResourceLocator {
+
+ /**
+ * Location describing a resource
+ *
+ * @return uri to resource
+ */
+ public URI getLocation();
+
+ /**
+ * Get this locators protocol
+ *
+ * @return String
+ */
+ public String getProtocol();
+
+ /**
+ * Get the raw path.
+ *
+ * @return raw path
+ */
+ public String getRawPath();
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorManager.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorManager.java
new file mode 100644
index 00000000000..c313f1a8e53
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorManager.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import org.eclipse.osee.framework.resource.management.exception.MalformedLocatorException;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResourceLocatorManager {
+
+ /**
+ * Generate a resource locator based on protocol, seed and name
+ *
+ * @param protocol
+ * @param seed
+ * @param name
+ * @return a resource locator
+ * @throws MalformedLocatorException
+ */
+ IResourceLocator generateResourceLocator(String protocol, String seed, String name) throws MalformedLocatorException;
+
+ /**
+ * Get resource locator based on protocol and path
+ *
+ * @param path
+ * @return a resource locator
+ * @throws MalformedLocatorException
+ */
+ IResourceLocator getResourceLocator(String path) throws MalformedLocatorException;
+
+ /**
+ * Add resource locator provider
+ *
+ * @param resourceLocatorProvider
+ */
+ public void addResourceLocatorProvider(IResourceLocatorProvider resourceLocatorProvider);
+
+ /**
+ * Remove resource locator provider
+ *
+ * @param resourceLocatorProvider
+ */
+ public void removeResourceLocatorProvider(IResourceLocatorProvider resourceLocatorProvider);
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorProvider.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorProvider.java
new file mode 100644
index 00000000000..d260a67beac
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceLocatorProvider.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import org.eclipse.osee.framework.resource.management.exception.MalformedLocatorException;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResourceLocatorProvider {
+
+ /**
+ * Check if this provider is valid
+ *
+ * @param protocol
+ * @return <b>true</b> if this provider is valid
+ */
+ public boolean isValid(String protocol);
+
+ /**
+ * Generate a resource locator based on seed and name
+ *
+ * @param seed
+ * @param name
+ * @return a resource locator
+ * @throws MalformedLocatorException
+ */
+ IResourceLocator generateResourceLocator(String seed, String name) throws MalformedLocatorException;
+
+ /**
+ * Get resource locator
+ *
+ * @param path
+ * @return a resource locator
+ * @throws MalformedLocatorException
+ */
+ IResourceLocator getResourceLocator(String path) throws MalformedLocatorException;
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceManager.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceManager.java
new file mode 100644
index 00000000000..c88e5a2a3be
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceManager.java
@@ -0,0 +1,83 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResourceManager {
+
+ public static final int OK = 1;
+ public static final int FAIL = 2;
+ public static final int RESOURCE_NOT_FOUND = 3;
+
+ /**
+ * Add listener to list
+ *
+ * @param listener
+ */
+ public void addResourceListener(IResourceListener listener);
+
+ /**
+ * Remove listener from list
+ *
+ * @param listener
+ */
+ public void removeResourceListener(IResourceListener listener);
+
+ /**
+ * Add a resource provider
+ *
+ * @param resourceProvider to add
+ */
+ public void addResourceProvider(IResourceProvider resourceProvider);
+
+ /**
+ * Remove a resource provider
+ *
+ * @param resourceProvider to remove
+ */
+ public void removeResourceProvider(IResourceProvider resourceProvider);
+
+ /**
+ * Acquire resource specified by resource locator
+ *
+ * @param locator location of the resource needed
+ * @param options operation options
+ * @return the resource
+ */
+ public IResource acquire(IResourceLocator locator, Options options) throws Exception;
+
+ /**
+ * Determines if a resource exists for the given locator.
+ *
+ * @param locator location of the data to check
+ */
+ public boolean exists(IResourceLocator locator) throws Exception;
+
+ /**
+ * Save input to location specified by resource locator
+ *
+ * @param locator location where to store the data
+ * @param resource to store
+ * @param options operation options
+ * @return status
+ */
+ public IResourceLocator save(final IResourceLocator locatorHint, final IResource resource, final Options options) throws Exception;
+
+ /**
+ * Delete resource specified by resource locator
+ *
+ * @param locator location of the resource to delete
+ * @return status
+ */
+ public int delete(IResourceLocator locator) throws Exception;
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceProvider.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceProvider.java
new file mode 100644
index 00000000000..83c999e8d60
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/IResourceProvider.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public interface IResourceProvider {
+
+ /**
+ * Determines whether this provider is valid for this locator
+ *
+ * @param locator location of the resource needed
+ * @return boolean
+ */
+ public boolean isValid(IResourceLocator locator);
+
+ /**
+ * Acquire resource specified by resource locator
+ *
+ * @param locator location of the resource needed
+ * @param options operation options
+ * @return the resource
+ */
+ public IResource acquire(IResourceLocator locator, Options options) throws Exception;
+
+ /**
+ * Determines if a resource exists for the given locator.
+ *
+ * @param locator location of the data to check
+ */
+ public boolean exists(IResourceLocator locator) throws Exception;
+
+ /**
+ * Save input to location specified by resource locator
+ *
+ * @param locator location where to store the data
+ * @param options operation options
+ * @param resource the resource to save
+ * @return status
+ */
+ public IResourceLocator save(IResourceLocator locator, IResource resource, Options options) throws Exception;
+
+ /**
+ * Delete resource specified by resource locator
+ *
+ * @param locator location of the resource to delete
+ * @return status
+ */
+ public int delete(IResourceLocator locator) throws Exception;
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Options.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Options.java
new file mode 100644
index 00000000000..ba0e3a07eb3
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Options.java
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import java.util.Properties;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class Options {
+
+ private Properties properties;
+
+ public Options() {
+ this.properties = new Properties();
+ }
+
+ public boolean getBoolean(String key) {
+ return new Boolean(getString(key));
+ }
+
+ public String getString(String key) {
+ return this.properties.getProperty(key, "");
+ }
+
+ public void put(String key, String value) {
+ if (value != null && value.length() > 0) {
+ this.properties.put(key, value);
+ }
+ }
+
+ public void put(String key, boolean value) {
+ this.properties.put(key, Boolean.toString(value));
+ }
+
+ /* (non-Javadoc)
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return properties.toString();
+ }
+
+ public void clear() {
+ this.properties.clear();
+ }
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Resource.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Resource.java
new file mode 100644
index 00000000000..e09183c36d9
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/Resource.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URI;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class Resource implements IResource {
+ private URI uri;
+ private boolean isCompressed;
+
+ public Resource(URI uri, boolean isCompressed) {
+ this.uri = uri;
+ this.isCompressed = isCompressed;
+ }
+
+ public InputStream getContent() throws IOException {
+ return uri.toURL().openStream();
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.osee.framework.resource.management.IResource#getLocation()
+ */
+ public URI getLocation() {
+ return uri;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResource#getName()
+ */
+ @Override
+ public String getName() {
+ String value = uri.toASCIIString();
+ return value.substring(value.lastIndexOf("/") + 1, value.length());
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResource#isCompressed()
+ */
+ @Override
+ public boolean isCompressed() {
+ return isCompressed;
+ }
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/ResourceLocator.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/ResourceLocator.java
new file mode 100644
index 00000000000..53548509083
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/ResourceLocator.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+import java.net.URI;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class ResourceLocator implements IResourceLocator {
+
+ private URI uri;
+
+ public ResourceLocator(URI uri) {
+ if (uri == null) {
+ throw new IllegalArgumentException("URI was null.");
+ }
+ this.uri = uri;
+ }
+
+ public URI getLocation() {
+ return uri;
+ }
+
+ public String getProtocol() {
+ return uri.getScheme();
+ }
+
+ public String toString() {
+ return uri.toString();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResourceLocator#getRawPath()
+ */
+ @Override
+ public String getRawPath() {
+ String toReturn = uri.getSchemeSpecificPart();
+ if (toReturn.startsWith("//") != false) {
+ toReturn = toReturn.substring(2, toReturn.length());
+ }
+ return toReturn;
+ }
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/StandardOptions.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/StandardOptions.java
new file mode 100644
index 00000000000..b09a2ccf3de
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/StandardOptions.java
@@ -0,0 +1,18 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public enum StandardOptions {
+ CompressOnSave, CompressOnAcquire, DecompressOnSave, DecompressOnAquire, Overwrite, Extension;
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/EmptyResourceException.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/EmptyResourceException.java
new file mode 100644
index 00000000000..676633c125e
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/EmptyResourceException.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management.exception;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class EmptyResourceException extends Exception {
+
+ private static final long serialVersionUID = 262834138993880676L;
+
+ public EmptyResourceException() {
+ super();
+ }
+
+ public EmptyResourceException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ public EmptyResourceException(String message) {
+ super(message);
+ }
+
+ public EmptyResourceException(Throwable cause) {
+ super(cause);
+ }
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/InvalidLocatorException.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/InvalidLocatorException.java
new file mode 100644
index 00000000000..2e5f536c206
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/InvalidLocatorException.java
@@ -0,0 +1,36 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management.exception;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class InvalidLocatorException extends Exception {
+
+ private static final long serialVersionUID = -1291325728313575694L;
+
+ public InvalidLocatorException() {
+ super();
+ }
+
+ public InvalidLocatorException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ public InvalidLocatorException(String message) {
+ super(message);
+ }
+
+ public InvalidLocatorException(Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/MalformedLocatorException.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/MalformedLocatorException.java
new file mode 100644
index 00000000000..3f26a64a2b5
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/exception/MalformedLocatorException.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management.exception;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class MalformedLocatorException extends Exception {
+
+ private static final long serialVersionUID = -7595802736847790150L;
+
+ public MalformedLocatorException() {
+ super();
+ }
+
+ /**
+ * @param message
+ * @param cause
+ */
+ public MalformedLocatorException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ /**
+ * @param message
+ */
+ public MalformedLocatorException(String message) {
+ super(message);
+ }
+
+ /**
+ * @param cause
+ */
+ public MalformedLocatorException(Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceLocatorManager.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceLocatorManager.java
new file mode 100644
index 00000000000..9a2271e25cc
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceLocatorManager.java
@@ -0,0 +1,80 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management.internal;
+
+import java.util.List;
+import java.util.concurrent.CopyOnWriteArrayList;
+import org.eclipse.osee.framework.resource.management.IResourceLocator;
+import org.eclipse.osee.framework.resource.management.IResourceLocatorManager;
+import org.eclipse.osee.framework.resource.management.IResourceLocatorProvider;
+import org.eclipse.osee.framework.resource.management.exception.MalformedLocatorException;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class ResourceLocatorManager implements IResourceLocatorManager {
+
+ private List<IResourceLocatorProvider> resourceLocatorProviders;
+
+ public ResourceLocatorManager() {
+ this.resourceLocatorProviders = new CopyOnWriteArrayList<IResourceLocatorProvider>();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResourceLocatorManager#addResourceLocatorProvider(org.eclipse.osee.framework.resource.management.IResourceLocatorProvider)
+ */
+ @Override
+ public void addResourceLocatorProvider(IResourceLocatorProvider resourceLocatorProvider) {
+ this.resourceLocatorProviders.add(resourceLocatorProvider);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResourceLocatorManager#removeResourceLocatorProvider(org.eclipse.osee.framework.resource.management.IResourceLocatorProvider)
+ */
+ @Override
+ public void removeResourceLocatorProvider(IResourceLocatorProvider resourceLocatorProvider) {
+ this.resourceLocatorProviders.remove(resourceLocatorProvider);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResourceLocatorManager#generateResourceLocator(java.lang.String, java.lang.String, java.lang.String)
+ */
+ @Override
+ public IResourceLocator generateResourceLocator(String protocol, String seed, String name) throws MalformedLocatorException {
+ IResourceLocatorProvider resourceLocatorProvider = getProvider(protocol);
+ return resourceLocatorProvider.generateResourceLocator(seed, name);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResourceLocatorManager#getResourceLocator(java.lang.String, java.lang.String)
+ */
+ @Override
+ public IResourceLocator getResourceLocator(String path) throws MalformedLocatorException {
+ IResourceLocatorProvider resourceLocatorProvider = getProvider(path);
+ return resourceLocatorProvider.getResourceLocator(path);
+ }
+
+ private IResourceLocatorProvider getProvider(String protocol) throws MalformedLocatorException {
+ IResourceLocatorProvider toReturn = null;
+ for (IResourceLocatorProvider provider : resourceLocatorProviders) {
+ if (provider.isValid(protocol) != false) {
+ toReturn = provider;
+ break;
+ }
+ }
+ if (toReturn == null) {
+ throw new MalformedLocatorException(String.format("Error finding locator for [%s] in [%s]", protocol,
+ resourceLocatorProviders));
+ }
+ return toReturn;
+ }
+
+}
diff --git a/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceManager.java b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceManager.java
new file mode 100644
index 00000000000..120f9ec893d
--- /dev/null
+++ b/org.eclipse.osee.framework.resource.management/src/org/eclipse/osee/framework/resource/management/internal/ResourceManager.java
@@ -0,0 +1,153 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.resource.management.internal;
+
+import java.util.List;
+import java.util.concurrent.CopyOnWriteArrayList;
+import org.eclipse.osee.framework.resource.management.IResource;
+import org.eclipse.osee.framework.resource.management.IResourceListener;
+import org.eclipse.osee.framework.resource.management.IResourceLocator;
+import org.eclipse.osee.framework.resource.management.IResourceManager;
+import org.eclipse.osee.framework.resource.management.IResourceProvider;
+import org.eclipse.osee.framework.resource.management.Options;
+import org.eclipse.osee.framework.resource.management.exception.InvalidLocatorException;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class ResourceManager implements IResourceManager {
+
+ private List<IResourceListener> listeners;
+ private List<IResourceProvider> resourceProviders;
+
+ public ResourceManager() {
+ this.listeners = new CopyOnWriteArrayList<IResourceListener>();
+ this.resourceProviders = new CopyOnWriteArrayList<IResourceProvider>();
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.osee.framework.resource.management.IResourceManagementService#addResourceListener(org.eclipse.osee.framework.resource.management.IResourceListener)
+ */
+ public void addResourceListener(IResourceListener listener) {
+ this.listeners.add(listener);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.osee.framework.resource.management.IResourceManagementService#removeResourceListener(org.eclipse.osee.framework.resource.management.IResourceListener)
+ */
+ public void removeResourceListener(IResourceListener listener) {
+ this.listeners.remove(listener);
+ }
+
+ private void notifyPreOnDelete(final IResourceLocator locator) {
+ for (IResourceListener listener : listeners) {
+ listener.onPreDelete(locator);
+ }
+ }
+
+ private void notifyPostOnDelete(final IResourceLocator locator) {
+ for (IResourceListener listener : listeners) {
+ listener.onPostDelete(locator);
+ }
+ }
+
+ private void notifyPreOnSave(final IResourceLocator locator, IResource resource, Options options) {
+ for (IResourceListener listener : listeners) {
+ listener.onPreSave(locator, resource, options);
+ }
+ }
+
+ private void notifyPostOnSave(IResourceLocator locator, final IResource resource, Options options) {
+ for (IResourceListener listener : listeners) {
+ listener.onPostSave(locator, resource, options);
+ }
+ }
+
+ private void notifyPreOnAcquire(final IResourceLocator locator) {
+ for (IResourceListener listener : listeners) {
+ listener.onPreAcquire(locator);
+ }
+ }
+
+ private void notifyPostOnAcquire(final IResource resource) {
+ for (IResourceListener listener : listeners) {
+ listener.onPostAcquire(resource);
+ }
+ }
+
+ private IResourceProvider getProvider(IResourceLocator locator) throws InvalidLocatorException {
+ IResourceProvider toReturn = null;
+ for (IResourceProvider provider : resourceProviders) {
+ if (provider.isValid(locator) != false) {
+ toReturn = provider;
+ break;
+ }
+ }
+ if (toReturn == null) {
+ throw new InvalidLocatorException();
+ }
+ return toReturn;
+ }
+
+ /**
+ * @see org.eclipse.osee.framework.resource.management.IResourceManager#addResourceProvider(org.eclipse.osee.framework.resource.management.IResourceProvider)
+ */
+ @Override
+ public void addResourceProvider(IResourceProvider resourceProvider) {
+ resourceProviders.add(resourceProvider);
+ }
+
+ /**
+ * @see org.eclipse.osee.framework.resource.management.IResourceManager#removeResourceProvider(org.eclipse.osee.framework.resource.management.IResourceProvider)
+ */
+ @Override
+ public void removeResourceProvider(IResourceProvider resourceProvider) {
+ resourceProviders.remove(resourceProvider);
+ }
+
+ public IResource acquire(IResourceLocator locator, Options options) throws Exception {
+ IResourceProvider provider = getProvider(locator);
+ notifyPreOnAcquire(locator);
+ IResource toReturn = provider.acquire(locator, options);
+ notifyPostOnAcquire(toReturn);
+ return toReturn;
+ }
+
+ public IResourceLocator save(IResourceLocator locator, IResource resource, Options options) throws Exception {
+ IResourceProvider provider = getProvider(locator);
+ notifyPreOnSave(locator, resource, options);
+ IResourceLocator actualLocator = provider.save(locator, resource, options);
+ notifyPostOnSave(locator, resource, options);
+ return actualLocator;
+ }
+
+ public int delete(IResourceLocator locator) throws Exception {
+ int toReturn = IResourceManager.FAIL;
+ IResourceProvider provider = getProvider(locator);
+ notifyPreOnDelete(locator);
+ toReturn = provider.delete(locator);
+ notifyPostOnDelete(locator);
+ return toReturn;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.resource.management.IResourceManager#exists(org.eclipse.osee.framework.resource.management.IResourceLocator)
+ */
+ @Override
+ public boolean exists(IResourceLocator locator) throws Exception {
+ IResourceProvider provider = getProvider(locator);
+ return provider.exists(locator);
+ }
+}

Back to the top