Loading .gitignore 0 → 100644 +9 −0 Original line number Diff line number Diff line # Maven target pom.xml.versionsBackup # Eclipse .settings .project .classpath pom.xml 0 → 100644 +90 −0 Original line number Diff line number Diff line <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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.inteligr8.alfresco</groupId> <artifactId>annotations-platform-module</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <name>Annotations ACS Platform Module</name> <description>A module to support annotation-based development for Alfresco Content Services modules.</description> <scm> <connection>scm:git:https://bitbucket.org/inteligr8/annotations-platform-module.git</connection> <developerConnection>scm:git:git@bitbucket.org:inteligr8/annotations-platform-module.git</developerConnection> <url>https://bitbucket.org/inteligr8/annotations-platform-module</url> </scm> <organization> <name>Inteligr8</name> <url>https://www.inteligr8.com</url> </organization> <developers> <developer> <id>brian.long</id> <name>Brian Long</name> <email>brian@inteligr8.com</email> <url>https://twitter.com/brianmlong</url> </developer> </developers> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> <alfresco.sdk.version>4.2.0</alfresco.sdk.version> <alfresco.platform.version>6.2.0-ga</alfresco.platform.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.alfresco</groupId> <artifactId>acs-community-packaging</artifactId> <version>${alfresco.platform.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Very popular, but not required, dependency --> <!-- Provided as an example --> <dependency> <groupId>org.alfresco</groupId> <artifactId>alfresco-repository</artifactId> <scope>provided</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>io.repaint.maven</groupId> <artifactId>tiles-maven-plugin</artifactId> <version>2.26</version> <extensions>true</extensions> <configuration> <tiles> <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-platform-self-rad-tile --> <tile>com.inteligr8.ootbee:beedk-acs-platform-self-rad-tile:[1.0.0,2.0.0)</tile> <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-platform-module-tile --> <tile>com.inteligr8.ootbee:beedk-acs-platform-module-tile:[1.0.0,2.0.0)</tile> <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-platform-self-it-tile --> <tile>com.inteligr8.ootbee:beedk-acs-platform-self-it-tile:[1.0.0,2.0.0)</tile> </tiles> </configuration> </plugin> </plugins> </build> <repositories> <repository> <id>alfresco-public</id> <url>https://artifacts.alfresco.com/nexus/content/groups/public</url> </repository> </repositories> </project> No newline at end of file rad.ps1 0 → 100644 +74 −0 Original line number Diff line number Diff line function discoverArtifactId { $script:ARTIFACT_ID=(mvn -q -Dexpression=project"."artifactId -DforceStdout help:evaluate) } function rebuild { echo "Rebuilding project ..." mvn process-classes } function start_ { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad process-classes } function start_log { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad "-Ddocker.showLogs" process-classes } function stop_ { discoverArtifactId echo "Stopping Docker containers that supported rapid application development ..." docker container ls --filter name=${ARTIFACT_ID}-* echo "Stopping containers ..." docker container stop (docker container ls -q --filter name=${ARTIFACT_ID}-*) echo "Removing containers ..." docker container rm (docker container ls -aq --filter name=${ARTIFACT_ID}-*) } function tail_logs { param ( $container ) discoverArtifactId docker container logs -f (docker container ls -q --filter name=${ARTIFACT_ID}-${container}) } function list { discoverArtifactId docker container ls --filter name=${ARTIFACT_ID}-* } switch ($args[0]) { "start" { start_ } "start_log" { start_log } "stop" { stop_ } "restart" { stop_ start_ } "rebuild" { rebuild } "tail" { tail_logs $args[1] } "containers" { list } default { echo "Usage: .\rad.ps1 [ start | start_log | stop | restart | rebuild | tail {container} | containers ]" } } echo "Completed!" rad.sh 0 → 100644 +71 −0 Original line number Diff line number Diff line #!/bin/sh discoverArtifactId() { ARTIFACT_ID=`mvn -q -Dexpression=project.artifactId -DforceStdout help:evaluate` } rebuild() { echo "Rebuilding project ..." mvn process-classes } start() { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad process-classes } start_log() { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad -Ddocker.showLogs process-classes } stop() { discoverArtifactId echo "Stopping Docker containers that supported rapid application development ..." docker container ls --filter name=${ARTIFACT_ID}-* echo "Stopping containers ..." docker container stop `docker container ls -q --filter name=${ARTIFACT_ID}-*` echo "Removing containers ..." docker container rm `docker container ls -aq --filter name=${ARTIFACT_ID}-*` } tail_logs() { discoverArtifactId docker container logs -f `docker container ls -q --filter name=${ARTIFACT_ID}-$1` } list() { discoverArtifactId docker container ls --filter name=${ARTIFACT_ID}-* } case "$1" in start) start ;; start_log) start_log ;; stop) stop ;; restart) stop start ;; rebuild) rebuild ;; tail) tail_logs $2 ;; containers) list ;; *) echo "Usage: ./rad.sh [ start | start_log | stop | restart | rebuild | tail {container} | containers ]" exit 1 esac echo "Completed!" src/main/java/com/inteligr8/alfresco/annotations/AspectConstrainable.java 0 → 100644 +42 −0 Original line number Diff line number Diff line package com.inteligr8.alfresco.annotations; import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.Set; import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QNamePattern; import org.alfresco.service.namespace.RegexQNamePattern; import org.springframework.beans.factory.BeanNameAware; public interface AspectConstrainable extends BeanNameAware { String getBeanName(); NamespaceService getNamespaceService(); default Collection<String> constrainedPrefixedAspects() { return Collections.emptySet(); } default Collection<String> constrainedRegexedAspects() { return Collections.emptySet(); } default Collection<? extends QNamePattern> constrainedAspects() { Set<QNamePattern> aspects = new HashSet<>(); Collection<String> prefixedAspects = this.constrainedPrefixedAspects(); for (String prefixedAspect : prefixedAspects) aspects.add(QName.createQName(prefixedAspect, this.getNamespaceService())); Collection<String> regexedAspects = this.constrainedRegexedAspects(); for (String regexedAspect : regexedAspects) aspects.add(new RegexQNamePattern(regexedAspect)); return aspects; } } Loading
.gitignore 0 → 100644 +9 −0 Original line number Diff line number Diff line # Maven target pom.xml.versionsBackup # Eclipse .settings .project .classpath
pom.xml 0 → 100644 +90 −0 Original line number Diff line number Diff line <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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.inteligr8.alfresco</groupId> <artifactId>annotations-platform-module</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <name>Annotations ACS Platform Module</name> <description>A module to support annotation-based development for Alfresco Content Services modules.</description> <scm> <connection>scm:git:https://bitbucket.org/inteligr8/annotations-platform-module.git</connection> <developerConnection>scm:git:git@bitbucket.org:inteligr8/annotations-platform-module.git</developerConnection> <url>https://bitbucket.org/inteligr8/annotations-platform-module</url> </scm> <organization> <name>Inteligr8</name> <url>https://www.inteligr8.com</url> </organization> <developers> <developer> <id>brian.long</id> <name>Brian Long</name> <email>brian@inteligr8.com</email> <url>https://twitter.com/brianmlong</url> </developer> </developers> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> <alfresco.sdk.version>4.2.0</alfresco.sdk.version> <alfresco.platform.version>6.2.0-ga</alfresco.platform.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.alfresco</groupId> <artifactId>acs-community-packaging</artifactId> <version>${alfresco.platform.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Very popular, but not required, dependency --> <!-- Provided as an example --> <dependency> <groupId>org.alfresco</groupId> <artifactId>alfresco-repository</artifactId> <scope>provided</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>io.repaint.maven</groupId> <artifactId>tiles-maven-plugin</artifactId> <version>2.26</version> <extensions>true</extensions> <configuration> <tiles> <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-platform-self-rad-tile --> <tile>com.inteligr8.ootbee:beedk-acs-platform-self-rad-tile:[1.0.0,2.0.0)</tile> <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-platform-module-tile --> <tile>com.inteligr8.ootbee:beedk-acs-platform-module-tile:[1.0.0,2.0.0)</tile> <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-platform-self-it-tile --> <tile>com.inteligr8.ootbee:beedk-acs-platform-self-it-tile:[1.0.0,2.0.0)</tile> </tiles> </configuration> </plugin> </plugins> </build> <repositories> <repository> <id>alfresco-public</id> <url>https://artifacts.alfresco.com/nexus/content/groups/public</url> </repository> </repositories> </project> No newline at end of file
rad.ps1 0 → 100644 +74 −0 Original line number Diff line number Diff line function discoverArtifactId { $script:ARTIFACT_ID=(mvn -q -Dexpression=project"."artifactId -DforceStdout help:evaluate) } function rebuild { echo "Rebuilding project ..." mvn process-classes } function start_ { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad process-classes } function start_log { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad "-Ddocker.showLogs" process-classes } function stop_ { discoverArtifactId echo "Stopping Docker containers that supported rapid application development ..." docker container ls --filter name=${ARTIFACT_ID}-* echo "Stopping containers ..." docker container stop (docker container ls -q --filter name=${ARTIFACT_ID}-*) echo "Removing containers ..." docker container rm (docker container ls -aq --filter name=${ARTIFACT_ID}-*) } function tail_logs { param ( $container ) discoverArtifactId docker container logs -f (docker container ls -q --filter name=${ARTIFACT_ID}-${container}) } function list { discoverArtifactId docker container ls --filter name=${ARTIFACT_ID}-* } switch ($args[0]) { "start" { start_ } "start_log" { start_log } "stop" { stop_ } "restart" { stop_ start_ } "rebuild" { rebuild } "tail" { tail_logs $args[1] } "containers" { list } default { echo "Usage: .\rad.ps1 [ start | start_log | stop | restart | rebuild | tail {container} | containers ]" } } echo "Completed!"
rad.sh 0 → 100644 +71 −0 Original line number Diff line number Diff line #!/bin/sh discoverArtifactId() { ARTIFACT_ID=`mvn -q -Dexpression=project.artifactId -DforceStdout help:evaluate` } rebuild() { echo "Rebuilding project ..." mvn process-classes } start() { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad process-classes } start_log() { echo "Rebuilding project and starting Docker containers to support rapid application development ..." mvn -Drad -Ddocker.showLogs process-classes } stop() { discoverArtifactId echo "Stopping Docker containers that supported rapid application development ..." docker container ls --filter name=${ARTIFACT_ID}-* echo "Stopping containers ..." docker container stop `docker container ls -q --filter name=${ARTIFACT_ID}-*` echo "Removing containers ..." docker container rm `docker container ls -aq --filter name=${ARTIFACT_ID}-*` } tail_logs() { discoverArtifactId docker container logs -f `docker container ls -q --filter name=${ARTIFACT_ID}-$1` } list() { discoverArtifactId docker container ls --filter name=${ARTIFACT_ID}-* } case "$1" in start) start ;; start_log) start_log ;; stop) stop ;; restart) stop start ;; rebuild) rebuild ;; tail) tail_logs $2 ;; containers) list ;; *) echo "Usage: ./rad.sh [ start | start_log | stop | restart | rebuild | tail {container} | containers ]" exit 1 esac echo "Completed!"
src/main/java/com/inteligr8/alfresco/annotations/AspectConstrainable.java 0 → 100644 +42 −0 Original line number Diff line number Diff line package com.inteligr8.alfresco.annotations; import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.Set; import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QNamePattern; import org.alfresco.service.namespace.RegexQNamePattern; import org.springframework.beans.factory.BeanNameAware; public interface AspectConstrainable extends BeanNameAware { String getBeanName(); NamespaceService getNamespaceService(); default Collection<String> constrainedPrefixedAspects() { return Collections.emptySet(); } default Collection<String> constrainedRegexedAspects() { return Collections.emptySet(); } default Collection<? extends QNamePattern> constrainedAspects() { Set<QNamePattern> aspects = new HashSet<>(); Collection<String> prefixedAspects = this.constrainedPrefixedAspects(); for (String prefixedAspect : prefixedAspects) aspects.add(QName.createQName(prefixedAspect, this.getNamespaceService())); Collection<String> regexedAspects = this.constrainedRegexedAspects(); for (String regexedAspect : regexedAspects) aspects.add(new RegexQNamePattern(regexedAspect)); return aspects; } }