You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by dk...@apache.org on 2018/09/12 18:24:57 UTC

[sling-org-apache-sling-app-cms] branch master updated: Cleaning up some JavaDoc issues in the API

This is an automated email from the ASF dual-hosted git repository.

dklco pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git


The following commit(s) were added to refs/heads/master by this push:
     new 36cc0ef  Cleaning up some JavaDoc issues in the API
36cc0ef is described below

commit 36cc0ef173e5f6a28b12bbcc11f58de75e43276b
Author: Dan Klco <dk...@apache.org>
AuthorDate: Wed Sep 12 12:48:10 2018 -0400

    Cleaning up some JavaDoc issues in the API
---
 api/pom.xml                                        |   4 +
 .../main/java/org/apache/sling/cms/CMSUtils.java   | 147 ++++++----
 .../main/java/org/apache/sling/cms/Component.java  |   7 +
 .../org/apache/sling/cms/EditableResource.java     |   2 +-
 api/src/main/java/org/apache/sling/cms/Page.java   |  35 +--
 .../java/org/apache/sling/cms/PageManager.java     |   2 +-
 .../org/apache/sling/cms/PageTemplateManager.java  |   2 +-
 .../main/java/org/apache/sling/cms/References.java |   2 +-
 api/src/main/java/org/apache/sling/cms/Site.java   |  14 +-
 .../java/org/apache/sling/cms/SiteManager.java     |   2 +-
 pom.xml                                            | 320 +++++++++++----------
 11 files changed, 298 insertions(+), 239 deletions(-)

diff --git a/api/pom.xml b/api/pom.xml
index 77357ae..483b181 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -93,5 +93,9 @@
             <groupId>org.osgi</groupId>
             <artifactId>osgi.annotation</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.jetbrains</groupId>
+            <artifactId>annotations</artifactId>
+        </dependency>
     </dependencies>
 </project>
\ No newline at end of file
diff --git a/api/src/main/java/org/apache/sling/cms/CMSUtils.java b/api/src/main/java/org/apache/sling/cms/CMSUtils.java
index 2c563a0..639467c 100644
--- a/api/src/main/java/org/apache/sling/cms/CMSUtils.java
+++ b/api/src/main/java/org/apache/sling/cms/CMSUtils.java
@@ -17,75 +17,116 @@
 package org.apache.sling.cms;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
 
 import org.apache.commons.lang.ArrayUtils;
 import org.apache.jackrabbit.JcrConstants;
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 
 /**
  * Shared utility functions
  */
 public class CMSUtils {
 
-	private CMSUtils() {
-	}
+    private CMSUtils() {
+    }
 
-	public static final <T> List<T> adaptResources(Collection<Resource> resources, Class<T> type) {
-		List<T> values = new ArrayList<>();
-		if (resources != null) {
-			for (Resource resource : resources) {
-				T val = resource.adaptTo(type);
-				if (val != null) {
-					values.add(val);
-				}
-			}
-		}
-		return values;
-	}
+    /**
+     * Adapts the collection of resources ensuring that if any cannot be adapted it
+     * is excluded from the returned list.
+     * 
+     * @param resources the collection of resources to adapt
+     * @param type      the type to which to adapt the resources
+     * @param <T>         the type to which the resources are adapted
+     * @return the list of adapted classes
+     */
+    @NotNull
+    public static final <T> List<T> adaptResources(Collection<Resource> resources, Class<T> type) {
+        List<T> values = new ArrayList<>();
+        if (resources != null) {
+            for (Resource resource : resources) {
+                T val = resource.adaptTo(type);
+                if (val != null) {
+                    values.add(val);
+                }
+            }
+        }
+        return values;
+    }
 
-	public static final <T> List<T> adaptResources(Resource[] resources, Class<T> type) {
-		List<T> values = new ArrayList<>();
-		if (resources != null) {
-			for (Resource resource : resources) {
-				values.add(resource.adaptTo(type));
-			}
-		}
-		return values;
-	}
+    /**
+     * Adapts the array of resources ensuring that if any cannot be adapted it is
+     * excluded from the returned list.
+     * 
+     * @param resources the array of resources to adapt
+     * @param type      the type to which to adapt the resources
+     * @param <T>         the type to which the resources are adapted
+     * @return the list of adapted classes
+     */
+    @NotNull
+    public static final <T> List<T> adaptResources(Resource[] resources, Class<T> type) {
+        return adaptResources(Arrays.asList(resources), type);
+    }
 
-	public static final Resource findParentResourceofType(Resource resource, String type) {
-		if (resource != null) {
-			if (type.equals(resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class))) {
-				return resource;
-			} else {
-				return findParentResourceofType(resource.getParent(), type);
-			}
-		}
-		return null;
-	}
+    /**
+     * Looks up the resource tree to find the parent resource with the specified
+     * jcr:primaryType.
+     * 
+     * @param resource the resource to search from
+     * @param type     the primary type to find
+     * @return the parent of the type or null
+     */
+    @Nullable
+    public static final Resource findParentResourceofType(Resource resource, String type) {
+        if (resource != null) {
+            if (type.equals(resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class))) {
+                return resource;
+            } else {
+                return findParentResourceofType(resource.getParent(), type);
+            }
+        }
+        return null;
+    }
 
-	public static final Resource findPublishableParent(Resource resource) {
-		String type = resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class);
-		if (ArrayUtils.contains(CMSConstants.PUBLISHABLE_TYPES, type)) {
-			return resource;
-		} else if (resource.getParent() != null) {
-			return findPublishableParent(resource.getParent());
-		}
-		return null;
-	}
+    /**
+     * Look up the resource tree to find a parent of a publishable type.
+     * 
+     * @param resource the resource to search from
+     * @return the parent publishable type
+     */
+    @Nullable
+    public static final Resource findPublishableParent(Resource resource) {
+        String type = resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class);
+        if (ArrayUtils.contains(CMSConstants.PUBLISHABLE_TYPES, type)) {
+            return resource;
+        } else if (resource.getParent() != null) {
+            return findPublishableParent(resource.getParent());
+        }
+        return null;
+    }
 
-	public static final boolean isPublished(Resource resource) {
-		boolean published = true;
-		Resource publishable = findPublishableParent(resource);
-		if (publishable != null) {
-			Resource content = publishable.getChild(JcrConstants.JCR_CONTENT);
-			if (content != null && !(content.getValueMap().get(CMSConstants.PN_PUBLISHED, false))) {
-				published = false;
-			}
-		}
-		return published;
-	}
+    /**
+     * Return true of the resource (or it's publishable parent) is published or
+     * false otherwise. If the resource is not contained within a publishable parent
+     * it is considered published.
+     * 
+     * @param resource the resource to check
+     * @return whether or not the resource is published
+     */
+    public static final boolean isPublished(Resource resource) {
+        boolean published = true;
+        Resource publishable = findPublishableParent(resource);
+        if (publishable != null) {
+            Resource content = publishable.getChild(JcrConstants.JCR_CONTENT);
+            if (content != null && !(content.getValueMap().get(CMSConstants.PN_PUBLISHED, false))) {
+                published = false;
+            }
+        }
+        return published;
+    }
 
 }
diff --git a/api/src/main/java/org/apache/sling/cms/Component.java b/api/src/main/java/org/apache/sling/cms/Component.java
index 3be85e6..b4f0f6c 100644
--- a/api/src/main/java/org/apache/sling/cms/Component.java
+++ b/api/src/main/java/org/apache/sling/cms/Component.java
@@ -17,6 +17,7 @@
 package org.apache.sling.cms;
 
 import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
 import org.osgi.annotation.versioning.ProviderType;
 
 /**
@@ -25,6 +26,12 @@ import org.osgi.annotation.versioning.ProviderType;
 @ProviderType
 public interface Component {
 
+    /**
+     * Returns the type of the component. A component can belong to multiple types
+     * 
+     * @return the component type
+     */
+    @NotNull
     String[] getComponentType();
 
     /**
diff --git a/api/src/main/java/org/apache/sling/cms/EditableResource.java b/api/src/main/java/org/apache/sling/cms/EditableResource.java
index 2e34ae3..19b9255 100644
--- a/api/src/main/java/org/apache/sling/cms/EditableResource.java
+++ b/api/src/main/java/org/apache/sling/cms/EditableResource.java
@@ -29,7 +29,7 @@ public interface EditableResource {
     /**
      * Get the component associated with this resource
      * 
-     * @return
+     * @return the component associated with this resource
      */
     Component getComponent();
 
diff --git a/api/src/main/java/org/apache/sling/cms/Page.java b/api/src/main/java/org/apache/sling/cms/Page.java
index 026dcb1..4604e16 100644
--- a/api/src/main/java/org/apache/sling/cms/Page.java
+++ b/api/src/main/java/org/apache/sling/cms/Page.java
@@ -40,7 +40,7 @@ public interface Page {
      * Gets the path of this page after it is published on the site's primary domain
      * with the the html extension
      * 
-     * @return
+     * @return the published path of the page
      */
     String getPublishedPath();
 
@@ -48,70 +48,70 @@ public interface Page {
      * Gets the full url (including domain) of this page after it is published on
      * the site's primary domain with the the html extension
      * 
-     * @return
+     * @return the published url of the page
      */
     String getPublishedUrl();
 
     /**
      * Gets the site this page is contained within
      * 
-     * @return
+     * @return the site containing the page
      */
     Site getSite();
 
     /**
      * Gets the sling:Template this page was configured with
      * 
-     * @return
+     * @return the template for the page
      */
     PageTemplate getTemplate();
 
     /**
      * Gets the path to the template this page was configured with.
      * 
-     * @return
+     * @return the path to the template
      */
     String getTemplatePath();
 
     /**
      * Retrieves the content Resource of the page
      * 
-     * @return
+     * @return the jcr:content child resource of the page
      */
     Resource getContentResource();
 
     /**
      * Gets the date the page was created
      * 
-     * @return
+     * @return the date on which the page was created
      */
     Calendar getCreated();
 
     /**
      * Gets the name of the user whom created this page
      * 
-     * @return
+     * @return the name of the user whom created the page
      */
     String getCreatedBy();
 
     /**
      * Gets the last time this page was modified
      * 
-     * @return
+     * @return the date the page was last modified
      */
     Calendar getLastModified();
 
     /**
      * Gets the username of the user who last modified the page
      * 
-     * @return
+     * @return the name of the user who last modified the page
      */
     String getLastModifiedBy();
 
     /**
      * Gets the name of the Sling Resource backing the page
      * 
-     * @return
+     * @return the name of the page resource
      */
     String getName();
 
@@ -119,42 +119,43 @@ public interface Page {
      * Gets the parent of the current page. This will generally be another
      * sling:Page or sling:Site
      * 
-     * @return
+     * @return the parent of the page, may not be another page
      */
     Resource getParent();
 
     /**
      * Get the path this page resides within the repository
      * 
-     * @return
+     * @return the path of the page
      */
     String getPath();
 
     /**
      * Gets a ValueMap of the properties of the content resource for this page
      * 
-     * @return
+     * @return the properties of the content resource
      */
     ValueMap getProperties();
 
     /**
      * Returns true if the page is published, false otherwise
      * 
-     * @return
+     * @return whether or not the page is published
      */
     boolean isPublished();
 
     /**
      * Gets the resource backing this pages
      * 
-     * @return
+     * @return the resource backing the page
      */
     Resource getResource();
 
     /**
      * Gets the title of this page, will fall back to the name of the page
      * 
-     * @return
+     * @return the title of the page or the name of the page if the title is not
+     *         specified
      */
     String getTitle();
 }
diff --git a/api/src/main/java/org/apache/sling/cms/PageManager.java b/api/src/main/java/org/apache/sling/cms/PageManager.java
index 5b396ad..98a821f 100644
--- a/api/src/main/java/org/apache/sling/cms/PageManager.java
+++ b/api/src/main/java/org/apache/sling/cms/PageManager.java
@@ -28,7 +28,7 @@ public interface PageManager {
     /**
      * Get the page containing the adapted resource
      * 
-     * @return
+     * @return the page
      */
     Page getPage();
 }
diff --git a/api/src/main/java/org/apache/sling/cms/PageTemplateManager.java b/api/src/main/java/org/apache/sling/cms/PageTemplateManager.java
index ae94efd..ca397ad 100644
--- a/api/src/main/java/org/apache/sling/cms/PageTemplateManager.java
+++ b/api/src/main/java/org/apache/sling/cms/PageTemplateManager.java
@@ -32,7 +32,7 @@ public interface PageTemplateManager {
      * Gets the available templates for the current resource based on the templates
      * in the repository and then limiting the templates by their allowed pathF
      * 
-     * @return
+     * @return the list of available templates
      */
     List<PageTemplate> getAvailableTemplates();
 }
diff --git a/api/src/main/java/org/apache/sling/cms/References.java b/api/src/main/java/org/apache/sling/cms/References.java
index 85f0177..ba60cc5 100644
--- a/api/src/main/java/org/apache/sling/cms/References.java
+++ b/api/src/main/java/org/apache/sling/cms/References.java
@@ -30,7 +30,7 @@ public interface References {
     /**
      * Returns a list of the resources referencing the adapted resource
      * 
-     * @return
+     * @return the list of reference path / properties
      */
     List<String> getReferences();
 
diff --git a/api/src/main/java/org/apache/sling/cms/Site.java b/api/src/main/java/org/apache/sling/cms/Site.java
index 167576c..09ff9d6 100644
--- a/api/src/main/java/org/apache/sling/cms/Site.java
+++ b/api/src/main/java/org/apache/sling/cms/Site.java
@@ -30,49 +30,49 @@ public interface Site {
     /**
      * Gets the description of the site.
      * 
-     * @return
+     * @return the description of the site
      */
     String getDescription();
 
     /**
      * Gets the locale for the sites
      * 
-     * @return
+     * @return the locale for the site
      */
     Locale getLocale();
 
     /**
      * Gets the locale as it is stored in the Sling repository
      * 
-     * @return
+     * @return the string form of the site locale
      */
     String getLocaleString();
 
     /**
      * Gets the path of the site
      * 
-     * @return
+     * @return the path of the site
      */
     String getPath();
 
     /**
      * Gets the resource backing the site
      * 
-     * @return
+     * @return the resource at the site path
      */
     Resource getResource();
 
     /**
      * Gets the title of the site
      * 
-     * @return
+     * @return the title of the site
      */
     String getTitle();
 
     /**
      * Gets the "primary" URL for the site as configured
      * 
-     * @return
+     * @return the primary url for the site
      */
     String getUrl();
 
diff --git a/api/src/main/java/org/apache/sling/cms/SiteManager.java b/api/src/main/java/org/apache/sling/cms/SiteManager.java
index 3a873cc..c53661c 100644
--- a/api/src/main/java/org/apache/sling/cms/SiteManager.java
+++ b/api/src/main/java/org/apache/sling/cms/SiteManager.java
@@ -28,7 +28,7 @@ public interface SiteManager {
     /**
      * Get the site containing the current resource.
      * 
-     * @return
+     * @return the site
      */
     Site getSite();
 
diff --git a/pom.xml b/pom.xml
index d5742ef..3b9a71f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,169 +1,175 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
-	license agreements. See the NOTICE file distributed with this work for additional 
-	information regarding copyright ownership. The ASF licenses this file to 
-	you under the Apache License, Version 2.0 (the "License"); you may not use 
-	this file except in compliance with the License. You may obtain a copy of 
-	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
-	by applicable law or agreed to in writing, software distributed under the 
-	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
-	OF ANY KIND, either express or implied. See the License for the specific 
-	language governing permissions and limitations under the License. -->
+    license agreements. See the NOTICE file distributed with this work for additional 
+    information regarding copyright ownership. The ASF licenses this file to 
+    you under the Apache License, Version 2.0 (the "License"); you may not use 
+    this file except in compliance with the License. You may obtain a copy of 
+    the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+    by applicable law or agreed to in writing, software distributed under the 
+    License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+    OF ANY KIND, either express or implied. See the License for the specific 
+    language governing permissions and limitations under the License. -->
 <project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.apache.sling</groupId>
-		<artifactId>sling</artifactId>
-		<version>33</version>
-		<relativePath />
-	</parent>
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.sling</groupId>
+        <artifactId>sling</artifactId>
+        <version>33</version>
+        <relativePath />
+    </parent>
 
-	<artifactId>org.apache.sling.cms</artifactId>
-	<name>Apache Sling - CMS</name>
+    <artifactId>org.apache.sling.cms</artifactId>
+    <name>Apache Sling - CMS</name>
     <description>An Apache Sling Reference CMS Application</description>
-	<version>0.9.1-SNAPSHOT</version>
-	<packaging>pom</packaging>
+    <version>0.9.1-SNAPSHOT</version>
+    <packaging>pom</packaging>
 
-	<properties>
-		<sling.protocol>http</sling.protocol>
-		<sling.host>localhost</sling.host>
-		<sling.port>8080</sling.port>
-		<sling.username>admin</sling.username>
-		<sling.password>admin</sling.password>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-		<maven.compiler.source>1.8</maven.compiler.source>
-		<maven.compiler.target>1.8</maven.compiler.target>
-	</properties>
+    <properties>
+        <sling.protocol>http</sling.protocol>
+        <sling.host>localhost</sling.host>
+        <sling.port>8080</sling.port>
+        <sling.username>admin</sling.username>
+        <sling.password>admin</sling.password>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <maven.compiler.source>1.8</maven.compiler.source>
+        <maven.compiler.target>1.8</maven.compiler.target>
+    </properties>
 
-	<modules>
+    <modules>
         <module>api</module>
-		<module>core</module>
-		<module>ui</module>
-		<module>reference</module>
-		<module>builder</module>
-	</modules>
+        <module>core</module>
+        <module>ui</module>
+        <module>reference</module>
+        <module>builder</module>
+    </modules>
 
-	<scm>
-		<connection>scm:git:https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git</connection>
-		<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git</developerConnection>
-		<url>https://gitbox.apache.org/repos/asf?p=sling-org-apache-sling-app-cms.git</url>
-		<tag>HEAD</tag>
-	</scm>
+    <scm>
+        <connection>scm:git:https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git</connection>
+        <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/sling-org-apache-sling-app-cms.git</developerConnection>
+        <url>https://gitbox.apache.org/repos/asf?p=sling-org-apache-sling-app-cms.git</url>
+        <tag>HEAD</tag>
+    </scm>
 
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>org.apache.geronimo.specs</groupId>
-				<artifactId>geronimo-atinject_1.0_spec</artifactId>
-				<version>1.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>javax.servlet</groupId>
-				<artifactId>servlet-api</artifactId>
-				<version>2.5</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.api</artifactId>
-				<version>2.18.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.caconfig.api</artifactId>
-				<version>1.0.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.commons.johnzon</artifactId>
-				<version>1.0.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<artifactId>org.apache.sling.engine</artifactId>
-				<version>2.6.12</version>
-				<groupId>org.apache.sling</groupId>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.models.api</artifactId>
-				<version>1.3.6</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.rewriter</artifactId>
-				<version>1.0.4</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.servlets.post</artifactId>
-				<version>2.3.22</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.jcr.base</artifactId>
-				<version>2.0.6</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.jackrabbit</groupId>
-				<artifactId>jackrabbit-jcr-commons</artifactId>
-				<version>2.7.5</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.jcr.resource</artifactId>
-				<version>2.3.8</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>commons-lang</groupId>
-				<artifactId>commons-lang</artifactId>
-				<version>2.6</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>commons-io</groupId>
-				<artifactId>commons-io</artifactId>
-				<version>1.4</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.cocoon</groupId>
-				<artifactId>cocoon-serializers-charsets</artifactId>
-				<version>1.0.2</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.geronimo.bundles</groupId>
-				<artifactId>jstl</artifactId>
-				<version>1.2_1</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.jackrabbit</groupId>
-				<artifactId>jackrabbit-api</artifactId>
-				<version>2.14.4</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.osgi</groupId>
-				<artifactId>osgi.annotation</artifactId>
-				<version>6.0.1</version>
-				<scope>provided</scope>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>org.apache.geronimo.specs</groupId>
+                <artifactId>geronimo-atinject_1.0_spec</artifactId>
+                <version>1.0</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>javax.servlet</groupId>
+                <artifactId>servlet-api</artifactId>
+                <version>2.5</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.api</artifactId>
+                <version>2.18.0</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.caconfig.api</artifactId>
+                <version>1.0.0</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.commons.johnzon</artifactId>
+                <version>1.0.0</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <artifactId>org.apache.sling.engine</artifactId>
+                <version>2.6.12</version>
+                <groupId>org.apache.sling</groupId>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.models.api</artifactId>
+                <version>1.3.6</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.rewriter</artifactId>
+                <version>1.0.4</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.servlets.post</artifactId>
+                <version>2.3.22</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.jcr.base</artifactId>
+                <version>2.0.6</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.jackrabbit</groupId>
+                <artifactId>jackrabbit-jcr-commons</artifactId>
+                <version>2.7.5</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.sling</groupId>
+                <artifactId>org.apache.sling.jcr.resource</artifactId>
+                <version>2.3.8</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>commons-lang</groupId>
+                <artifactId>commons-lang</artifactId>
+                <version>2.6</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>commons-io</groupId>
+                <artifactId>commons-io</artifactId>
+                <version>1.4</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.cocoon</groupId>
+                <artifactId>cocoon-serializers-charsets</artifactId>
+                <version>1.0.2</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.geronimo.bundles</groupId>
+                <artifactId>jstl</artifactId>
+                <version>1.2_1</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.jackrabbit</groupId>
+                <artifactId>jackrabbit-api</artifactId>
+                <version>2.14.4</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.osgi</groupId>
+                <artifactId>osgi.annotation</artifactId>
+                <version>6.0.1</version>
+                <scope>provided</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.jetbrains</groupId>
+                <artifactId>annotations</artifactId>
+                <version>16.0.2</version>
+                <scope>provided</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
 
 </project>
\ No newline at end of file