Author: tommaso
Date: Mon Nov 28 15:27:54 2016
New Revision: 1771761
URL: http://svn.apache.org/viewvc?rev=1771761&view=rev
Log:
SLING-6324 - avoiding exposing resource / file path of packages within their ids
Modified:
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackage.java
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackageBuilder.java
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackage.java
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackageBuilder.java
Modified:
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackage.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackage.java?rev=1771761&r1=1771760&r2=1771761&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackage.java
(original)
+++
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackage.java
Mon Nov 28 15:27:54 2016
@@ -45,7 +45,7 @@ public class FileDistributionPackage ext
@Nonnull String type,
@Nullable String digestAlgorithm,
@Nullable String digestMessage) {
- super(file.getAbsolutePath(), type, digestAlgorithm, digestMessage);
+ super(file.getName(), type, digestAlgorithm, digestMessage);
this.file = file;
this.getInfo().put(DistributionPackageInfo.PROPERTY_REQUEST_TYPE,
DistributionRequestType.ADD);
Modified:
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackageBuilder.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackageBuilder.java?rev=1771761&r1=1771760&r2=1771761&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackageBuilder.java
(original)
+++
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/FileDistributionPackageBuilder.java
Mon Nov 28 15:27:54 2016
@@ -157,6 +157,6 @@ public class FileDistributionPackageBuil
@Override
protected DistributionPackage getPackageInternal(@Nonnull ResourceResolver
resourceResolver, @Nonnull String id) {
- return new FileDistributionPackage(new File(id), getType(), null,
null);
+ return new FileDistributionPackage(new File(tempDirectory, id),
getType(), null, null);
}
}
Modified:
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackage.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackage.java?rev=1771761&r1=1771760&r2=1771761&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackage.java
(original)
+++
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackage.java
Mon Nov 28 15:27:54 2016
@@ -52,7 +52,7 @@ public class ResourceDistributionPackage
ResourceResolver resourceResolver,
@Nullable String digestAlgorithm,
@Nullable String digestMessage) {
- super(resource.getPath() + '-' + randomUUID(), type, digestAlgorithm,
digestMessage);
+ super(resource.getName(), type, digestAlgorithm, digestMessage);
this.resourceResolver = resourceResolver;
ValueMap valueMap = resource.getValueMap();
assert type.equals(valueMap.get("type")) : "wrong resource type";
Modified:
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackageBuilder.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackageBuilder.java?rev=1771761&r1=1771760&r2=1771761&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackageBuilder.java
(original)
+++
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/ResourceDistributionPackageBuilder.java
Mon Nov 28 15:27:54 2016
@@ -168,10 +168,15 @@ public class ResourceDistributionPackage
@Override
protected DistributionPackage getPackageInternal(@Nonnull ResourceResolver
resourceResolver, @Nonnull String id) {
- Resource resource = resourceResolver.getResource(id);
- if (resource != null) {
- return new ResourceDistributionPackage(resource, getType(),
resourceResolver, null, null);
- } else {
+ try {
+ Resource packagesRoot =
DistributionPackageUtils.getPackagesRoot(resourceResolver, packagesPath);
+ Resource packageResource = packagesRoot.getChild(id);
+ if (packageResource == null) {
+ return null;
+ } else {
+ return new ResourceDistributionPackage(packageResource,
getType(), resourceResolver, null, null);
+ }
+ } catch (PersistenceException e) {
return null;
}
}
@@ -214,7 +219,8 @@ public class ResourceDistributionPackage
resourceResolver.delete(r);
} else {
// check parent is there at least
- Resource parentResource =
ResourceUtil.getOrCreateResource(resourceResolver, parent.getPath(),
"nt:unstructured", "nt:unstructured", true);
+ Resource parentResource =
ResourceUtil.getOrCreateResource(resourceResolver, parent.getPath(),
"nt:unstructured",
+ "nt:unstructured", true);
log.debug("created parent {}", parentResource.getPath());
}