diff options
author | Roberto E. Escobar | 2013-08-13 23:37:04 +0000 |
---|---|---|
committer | Gerrit Code Review @ Eclipse.org | 2013-08-26 20:52:55 +0000 |
commit | 710c3a19b298a82abb994d9ee1df88ea9e744177 (patch) | |
tree | 181d4f6dd062808fc1530864b02158fd5cbbb721 | |
parent | c894a50639e6c7aa0f273f77a2b9544b7742d6f8 (diff) | |
download | org.eclipse.osee-710c3a19b298a82abb994d9ee1df88ea9e744177.tar.gz org.eclipse.osee-710c3a19b298a82abb994d9ee1df88ea9e744177.tar.xz org.eclipse.osee-710c3a19b298a82abb994d9ee1df88ea9e744177.zip |
refinement: Improve attribute data proxy
Don't involve resource name resolver during
attribute data proxy acquire content method.
The resource name resolver should only be
used during save operations. This change is
needed to index AttributeData rows directly.
Change-Id: Ibff74dc2f58b2f07880c9fb3b8b4e72540157c95
3 files changed, 12 insertions, 22 deletions
diff --git a/plugins/org.eclipse.osee.orcs.db.test/src/org/eclipse/osee/orcs/db/internal/proxy/DataResourceTest.java b/plugins/org.eclipse.osee.orcs.db.test/src/org/eclipse/osee/orcs/db/internal/proxy/DataResourceTest.java index 4248829f1d6..8f435f457c5 100644 --- a/plugins/org.eclipse.osee.orcs.db.test/src/org/eclipse/osee/orcs/db/internal/proxy/DataResourceTest.java +++ b/plugins/org.eclipse.osee.orcs.db.test/src/org/eclipse/osee/orcs/db/internal/proxy/DataResourceTest.java @@ -115,14 +115,6 @@ public class DataResourceTest { Assert.assertEquals(resolver, actual); } - @Test(expected = OseeCoreException.class) - public void testGetStorageNameException() throws OseeCoreException { - resource.setResolver(null); - Assert.assertNull(resource.getResolver()); - - resource.getStorageName(); - } - @Test public void testGetStorageName() throws OseeCoreException { resource.setResolver(null); @@ -131,7 +123,7 @@ public class DataResourceTest { ResourceNameResolver resolver = new MockResourceNameResolver("hello", "goodbye"); resource.setResolver(resolver); - Assert.assertEquals("hello", resource.getStorageName()); + Assert.assertEquals("hello", resolver.getStorageName()); } @Parameters diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/DataResource.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/DataResource.java index 96d17edd2f7..2ffc9bf89af 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/DataResource.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/DataResource.java @@ -10,8 +10,6 @@ *******************************************************************************/ package org.eclipse.osee.orcs.db.internal.proxy; -import org.eclipse.osee.framework.core.exception.OseeCoreException; -import org.eclipse.osee.framework.core.util.Conditions; import org.eclipse.osee.framework.jdk.core.util.Strings; import org.eclipse.osee.orcs.core.ds.ResourceNameResolver; @@ -81,9 +79,8 @@ public class DataResource { return Strings.isValid(getLocator()); } - public String getStorageName() throws OseeCoreException { - ResourceNameResolver resolver = getResolver(); - Conditions.checkNotNull(resolver, "resource name resolver"); - return resolver.getStorageName(); + @Override + public String toString() { + return "DataResource [resolver=" + resolver + ", contentType=" + contentType + ", encoding=" + encoding + ", extension=" + extension + ", locator=" + locator + "]"; } } diff --git a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/ResourceHandler.java b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/ResourceHandler.java index fea87746743..4f40b4ebf8a 100644 --- a/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/ResourceHandler.java +++ b/plugins/org.eclipse.osee.orcs.db/src/org/eclipse/osee/orcs/db/internal/proxy/ResourceHandler.java @@ -21,6 +21,7 @@ import org.eclipse.osee.framework.jdk.core.util.Strings; import org.eclipse.osee.framework.resource.management.IResource; import org.eclipse.osee.framework.resource.management.IResourceLocator; import org.eclipse.osee.framework.resource.management.IResourceManager; +import org.eclipse.osee.orcs.core.ds.ResourceNameResolver; import org.eclipse.osee.orcs.db.internal.util.BinaryContentUtils; import org.eclipse.osee.orcs.db.internal.util.ByteStreamResource; @@ -43,8 +44,7 @@ public class ResourceHandler implements DataHandler { Conditions.checkNotNull(path, "resource path"); IResourceLocator locator = resourceManager.getResourceLocator(path); - Conditions.checkNotNull(locator, "resource locator", "Unable to locate resource: [%s]", - dataResource.getStorageName()); + Conditions.checkNotNull(locator, "resource locator", "Unable to locate resource: [%s]", path); IResource resource = resourceManager.acquire(locator, DEFAULT_OPTIONS); String mimeType = BinaryContentUtils.getContentType(resource); @@ -55,8 +55,7 @@ public class ResourceHandler implements DataHandler { inputStream = resource.getContent(); data = Lib.inputStreamToBytes(inputStream); } catch (IOException ex) { - throw new OseeCoreException(ex, "Error acquiring resource - name[%s] locator[%s]", - dataResource.getStorageName(), dataResource.getLocator()); + throw new OseeCoreException(ex, "Error acquiring resource - [%s]", dataResource); } finally { Lib.close(inputStream); } @@ -72,7 +71,10 @@ public class ResourceHandler implements DataHandler { @Override public void save(long storageId, DataResource dataResource, byte[] rawContent) throws OseeCoreException { StringBuilder storageName = new StringBuilder(); - storageName.append(dataResource.getStorageName()); + + ResourceNameResolver resolver = dataResource.getResolver(); + Conditions.checkNotNull(resolver, "resource name resolver"); + storageName.append(resolver.getStorageName()); String extension = dataResource.getExtension(); if (Strings.isValid(extension)) { storageName.append("."); @@ -98,8 +100,7 @@ public class ResourceHandler implements DataHandler { Conditions.checkNotNull(path, "resource path"); IResourceLocator locator = resourceManager.getResourceLocator(path); - Conditions.checkNotNull(locator, "resource locator", "Unable to locate resource: [%s]", - dataResource.getStorageName()); + Conditions.checkNotNull(locator, "resource locator", "Unable to locate resource [%s]", dataResource); int result = resourceManager.delete(locator); if (IResourceManager.OK != result) { |