\r
<target name="gen_ddl"\r
description="generate service-specific tables(s), indices, etc.">\r
- <ant antfile="pstore/build.xml" target="gen_ddl" inheritAll="false"/>\r
</target>\r
\r
<target name="create_db"\r
description="create tables(s), indices for authorization service">\r
- <ant antfile="pstore/build.xml" target="create_db" inheritAll="false"/>\r
</target>\r
\r
<target name="deploy" depends="install"\r
description="deploy authorization service">\r
- <ant antfile="pstore/build.xml" target="deploy" inheritAll="false"/>\r
<ant antfile="service/build.xml" target="deploy" inheritall="false"/>\r
</target>\r
\r
<target name="undeploy"\r
description="undeploy authorization service">\r
- <ant antfile="pstore/build.xml" target="undeploy" inheritAll="false"/>\r
<ant antfile="service/build.xml" target="undeploy" inheritall="false"/>\r
</target>\r
\r
<target name="dist" depends="package"\r
description="distribute authorization service}">\r
- <!--ant antfile="pstore/build.xml" target="dist" inheritall="false"/-->\r
<ant antfile="service/build.xml" target="dist" inheritall="false"/>\r
</target>\r
\r
\r
<project name="authorization-mgt.client" default="package" basedir=".">\r
<description>\r
- collectionspace authorization-mgt service\r
+ collectionspace authorization-mgt client\r
</description>\r
<!-- set global properties for this build -->\r
<property name="services.trunk" value="../../.."/>\r
<name>log4j.configuration</name>\r
<value>file:${project.build.directory}/test-classes/log4j.properties</value>\r
</property>\r
- <property>\r
- <name>spring-beans-config</name>\r
- <value>applicationContext-authorization-test.xml</value>\r
- </property>\r
</systemProperties>\r
</configuration>\r
</plugin>\r
--- /dev/null
+\r
+<project name="authorization-mgt.import" default="package" basedir=".">\r
+ <description>\r
+ collectionspace authorization-mgt import\r
+ </description>\r
+ <!-- set global properties for this build -->\r
+ <property name="services.trunk" value="../../.."/>\r
+ <!-- enviornment should be declared before reading build.properties -->\r
+ <property environment="env" />\r
+ <property file="${services.trunk}/build.properties" />\r
+ <property name="mvn.opts" value="" />\r
+ <property name="src" location="src"/>\r
+\r
+ <condition property="osfamily-unix">\r
+ <os family="unix" />\r
+ </condition>\r
+ <condition property="osfamily-windows">\r
+ <os family="windows" />\r
+ </condition>\r
+\r
+ <target name="init">\r
+ <!-- Create the time stamp -->\r
+ <tstamp/>\r
+ </target>\r
+\r
+\r
+ <target name="package" depends="package-unix,package-windows"\r
+ description="Package CollectionSpace Services" />\r
+ <target name="package-unix" if="osfamily-unix">\r
+ <exec executable="mvn" failonerror="true">\r
+ <arg value="package" />\r
+ <arg value="-Dmaven.test.skip=true" />\r
+ <arg value="-f" />\r
+ <arg value="${basedir}/pom.xml" />\r
+ <arg value="-N" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+ <target name="package-windows" if="osfamily-windows">\r
+ <exec executable="cmd" failonerror="true">\r
+ <arg value="/c" />\r
+ <arg value="mvn.bat" />\r
+ <arg value="package" />\r
+ <arg value="-Dmaven.test.skip=true" />\r
+ <arg value="-f" />\r
+ <arg value="${basedir}/pom.xml" />\r
+ <arg value="-N" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+\r
+ <target name="install" depends="install-unix,install-windows"\r
+ description="Install" />\r
+ <target name="install-unix" if="osfamily-unix">\r
+ <exec executable="mvn" failonerror="true">\r
+ <arg value="install" />\r
+ <arg value="-Dmaven.test.skip=true" />\r
+ <arg value="-f" />\r
+ <arg value="${basedir}/pom.xml" />\r
+ <arg value="-N" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+ <target name="install-windows" if="osfamily-windows">\r
+ <exec executable="cmd" failonerror="true">\r
+ <arg value="/c" />\r
+ <arg value="mvn.bat" />\r
+ <arg value="install" />\r
+ <arg value="-Dmaven.test.skip=true" />\r
+ <arg value="-f" />\r
+ <arg value="${basedir}/pom.xml" />\r
+ <arg value="-N" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+\r
+ <target name="clean" depends="clean-unix,clean-windows"\r
+ description="Delete target directories" >\r
+ <delete dir="${build}"/>\r
+ </target>\r
+ <target name="clean-unix" if="osfamily-unix">\r
+ <exec executable="mvn" failonerror="true">\r
+ <arg value="clean" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+ <target name="clean-windows" if="osfamily-windows">\r
+ <exec executable="cmd" failonerror="true">\r
+ <arg value="/c" />\r
+ <arg value="mvn.bat" />\r
+ <arg value="clean" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+\r
+ <target name="test" depends="test-unix,test-windows" description="Run tests" />\r
+ <target name="test-unix" if="osfamily-unix">\r
+ <exec executable="mvn" failonerror="true">\r
+ <arg value="test" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+ <target name="test-windows" if="osfamily-windows">\r
+ <exec executable="cmd" failonerror="true">\r
+ <arg value="/c" />\r
+ <arg value="mvn.bat" />\r
+ <arg value="test" />\r
+ <arg value="${mvn.opts}" />\r
+ </exec>\r
+ </target>\r
+\r
+\r
+\r
+ <target name="deploy" depends="install"\r
+ description="deploy authorization-mgt import in ${jboss.server.cspace}">\r
+ </target>\r
+\r
+ <target name="undeploy"\r
+ description="undeploy authorization-mgt import from ${jboss.server.cspace}">\r
+ </target>\r
+\r
+ <target name="dist"\r
+ description="generate distribution for authorization-mgt import" depends="package">\r
+ </target>\r
+\r
+</project>\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project xmlns="http://maven.apache.org/POM/4.0.0"\r
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">\r
+ <parent>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.authorization-mgt</artifactId>\r
+ <version>0.7-SNAPSHOT</version>\r
+ </parent>\r
+\r
+ <modelVersion>4.0.0</modelVersion>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.authorization-mgt.import</artifactId>\r
+ <name>services.authorization-mgt.import</name>\r
+ <properties>\r
+ <spring.version>3.0.0.RELEASE</spring.version>\r
+ <spring.security.version>3.0.2.RELEASE</spring.security.version>\r
+ </properties>\r
+ <dependencies>\r
+ <!-- keep slf4j dependencies on the top -->\r
+ <dependency>\r
+ <groupId>org.slf4j</groupId>\r
+ <artifactId>slf4j-api</artifactId>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.slf4j</groupId>\r
+ <artifactId>slf4j-log4j12</artifactId>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.authentication.service</artifactId>\r
+ <version>${project.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.authorization.service</artifactId>\r
+ <version>${project.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.authorization.jaxb</artifactId>\r
+ <version>${project.version}</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.client</artifactId>\r
+ <version>${project.version}</version>\r
+ </dependency>\r
+\r
+ <!-- Needed if/when client test framework files are moved into -->\r
+ <!-- /services/client/src/test from /services/client/src/main -->\r
+\r
+ <!-- <dependency>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.client</artifactId>\r
+ <version>${project.version}</version>\r
+ <scope>test</scope>\r
+ <type>test-jar</type>\r
+ </dependency> -->\r
+ <dependency>\r
+ <groupId>org.testng</groupId>\r
+ <artifactId>testng</artifactId>\r
+ <version>5.6</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.jboss.resteasy</groupId>\r
+ <artifactId>resteasy-jaxrs</artifactId>\r
+ <exclusions>\r
+ <exclusion>\r
+ <groupId>tjws</groupId>\r
+ <artifactId>webserver</artifactId>\r
+ </exclusion>\r
+ </exclusions>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.jboss.resteasy</groupId>\r
+ <artifactId>resteasy-jaxb-provider</artifactId>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.jboss.resteasy</groupId>\r
+ <artifactId>resteasy-multipart-provider</artifactId>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>commons-httpclient</groupId>\r
+ <artifactId>commons-httpclient</artifactId>\r
+ <version>3.1</version>\r
+ </dependency>\r
+\r
+ <dependency>\r
+ <groupId>org.springframework.security</groupId>\r
+ <artifactId>spring-security-core</artifactId>\r
+ <version>${spring.security.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework.security</groupId>\r
+ <artifactId>spring-security-config</artifactId>\r
+ <version>${spring.security.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework.security</groupId>\r
+ <artifactId>spring-security-acl</artifactId>\r
+ <version>${spring.security.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework.security</groupId>\r
+ <artifactId>spring-security-web</artifactId>\r
+ <version>${spring.security.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework</groupId>\r
+ <artifactId>spring-context</artifactId>\r
+ <version>${spring.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework</groupId>\r
+ <artifactId>spring-context-support</artifactId>\r
+ <version>${spring.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework</groupId>\r
+ <artifactId>spring-aop</artifactId>\r
+ <version>${spring.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>aopalliance</groupId>\r
+ <artifactId>aopalliance</artifactId>\r
+ <version>1.0</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <!--dependency>\r
+ <groupId>org.springframework</groupId>\r
+ <artifactId>spring-tx</artifactId>\r
+ <version>${spring.version}</version>\r
+ <scope>provided</scope>\r
+ </dependency-->\r
+ <dependency>\r
+ <groupId>net.sf.ehcache</groupId>\r
+ <artifactId>ehcache</artifactId>\r
+ <version>1.6.2</version>\r
+ <optional>true</optional>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>mysql</groupId>\r
+ <artifactId>mysql-connector-java</artifactId>\r
+ <scope>test</scope>\r
+ </dependency>\r
+ </dependencies>\r
+\r
+ <build>\r
+ <finalName>cspace-services-authorization-mgt-import</finalName>\r
+ <plugins>\r
+ <plugin>\r
+ <groupId>org.apache.maven.plugins</groupId>\r
+ <artifactId>maven-surefire-plugin</artifactId>\r
+ <configuration>\r
+ <systemProperties>\r
+ <property>\r
+ <name>maven.basedir</name>\r
+ <value>${basedir}</value>\r
+ </property>\r
+ <property>\r
+ <name>log4j.configuration</name>\r
+ <value>file:${project.build.directory}/test-classes/log4j.properties</value>\r
+ </property>\r
+ <property>\r
+ <name>spring-beans-config</name>\r
+ <value>applicationContext-authorization-test.xml</value>\r
+ </property>\r
+ </systemProperties>\r
+ </configuration>\r
+ </plugin>\r
+ </plugins>\r
+ </build>\r
+\r
+</project>\r
+\r
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.collectionspace.services.authorization.test;
+package org.collectionspace.services.authorization.generator;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.List;
-import java.util.UUID;
import org.collectionspace.services.authorization.ActionType;
import org.collectionspace.services.authorization.Permission;
import org.collectionspace.services.authorization.EffectType;
}
- public void writePermissions(PermissionsList pcList, String fileName) {
- AbstractAuthorizationTestImpl.toFile(pcList, PermissionsList.class,
- AbstractAuthorizationTestImpl.testDataDir + fileName);
- logger.info("generated permissions to "
- + AbstractAuthorizationTestImpl.testDataDir + fileName);
- }
private Permission buildCommonPermission(String tenantId, String permId, String resourceName) {
//String id = UUID.randomUUID().toString();
return psrsl;
}
- public void writePermissionRoles(PermissionsRolesList psrsl, String fileName) {
- AbstractAuthorizationTestImpl.toFile(psrsl, PermissionsRolesList.class,
- AbstractAuthorizationTestImpl.testDataDir + fileName);
- logger.info("generated permissions-roles to "
- + AbstractAuthorizationTestImpl.testDataDir + fileName);
- }
-
private PermissionRole buildCommonPermissionRoles(String tenantId, String permissionId,
String resName) {
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
-package org.collectionspace.services.authorization.test;
+package org.collectionspace.services.authorization.importer;
import java.io.File;
import java.io.FileInputStream;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
import org.collectionspace.services.authorization.AuthZ;
+import org.collectionspace.services.authorization.PermissionsList;
+import org.collectionspace.services.authorization.PermissionsRolesList;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
*/
public abstract class AbstractAuthorizationTestImpl {
- static protected final String MAVEN_BASEDIR_PROPERTY = "maven.basedir";
- final Logger logger = LoggerFactory.getLogger(AbstractAuthorizationTestImpl.class);
+ static protected final String MAVEN_BASEDIR_PROPERTY = "maven.basedir";
+ final Logger logger = LoggerFactory.getLogger(AbstractAuthorizationTestImpl.class);
private org.springframework.jdbc.datasource.DataSourceTransactionManager txManager;
- final static String testDataDir = "src/test/resources/test-data/";
+ final static String importDataDir = "src/main/resources/import-data/";
static String baseDir;
+
static {
- baseDir = System.getProperty(AbstractAuthorizationTestImpl.MAVEN_BASEDIR_PROPERTY);
- if (baseDir == null || baseDir.isEmpty()) {
- baseDir = System.getProperty("user.dir");
- }
- baseDir = baseDir + System.getProperty("file.separator");
+ baseDir = System.getProperty(AbstractAuthorizationTestImpl.MAVEN_BASEDIR_PROPERTY);
+ if (baseDir == null || baseDir.isEmpty()) {
+ baseDir = System.getProperty("user.dir");
+ }
+ baseDir = baseDir + System.getProperty("file.separator");
}
/**
}
}
+
+ public void writePermissions(PermissionsList pcList, String fileName) {
+ AbstractAuthorizationTestImpl.toFile(pcList, PermissionsList.class,
+ AbstractAuthorizationTestImpl.importDataDir + fileName);
+ logger.info("generated permissions to "
+ + AbstractAuthorizationTestImpl.importDataDir + fileName);
+ }
+
+
+ public void writePermissionRoles(PermissionsRolesList psrsl, String fileName) {
+ AbstractAuthorizationTestImpl.toFile(psrsl, PermissionsRolesList.class,
+ AbstractAuthorizationTestImpl.importDataDir + fileName);
+ logger.info("generated permissions-roles to "
+ + AbstractAuthorizationTestImpl.importDataDir + fileName);
+ }
+
@Test(dataProvider = "testName", dataProviderClass = AbstractAuthorizationTestImpl.class)
public void test(String testName) {
if (logger.isDebugEnabled()) {
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.collectionspace.services.authorization.test;
+package org.collectionspace.services.authorization.importer;
//import java.util.ArrayList;
//import java.util.List;
+import org.collectionspace.services.authorization.generator.AuthorizationGen;
+import org.collectionspace.services.authorization.importer.AbstractAuthorizationTestImpl;
import java.util.ArrayList;
import java.util.List;
import org.collectionspace.services.authorization.ActionType;
public class AuthorizationSeedTest extends AbstractAuthorizationTestImpl {
final Logger logger = LoggerFactory.getLogger(AuthorizationSeedTest.class);
- final static String PERMISSION_FILE = "test-permissions.xml";
- final static String PERMISSION_ROLE_FILE = "test-permissions-roles.xml";
+ final static String PERMISSION_FILE = "import-permissions.xml";
+ final static String PERMISSION_ROLE_FILE = "import-permissions-roles.xml";
@BeforeClass(alwaysRun = true)
public void seedData() {
try {
AuthorizationGen authzGen = new AuthorizationGen();
PermissionsList pl = authzGen.genPermissions();
- authzGen.writePermissions(pl, PERMISSION_FILE);
+ writePermissions(pl, PERMISSION_FILE);
PermissionsRolesList prl = authzGen.genPermissionsRoles(pl);
- authzGen.writePermissionRoles(prl, PERMISSION_ROLE_FILE);
+ writePermissionRoles(prl, PERMISSION_ROLE_FILE);
seedRoles();
seedPermissions();
} catch (Exception ex) {
public void seedPermissions() throws Exception {
PermissionsList pcList =
(PermissionsList) fromFile(PermissionsList.class, baseDir
- + AbstractAuthorizationTestImpl.testDataDir + PERMISSION_FILE);
+ + AbstractAuthorizationTestImpl.importDataDir + PERMISSION_FILE);
logger.info("read permissions from "
- + baseDir + AbstractAuthorizationTestImpl.testDataDir + PERMISSION_FILE);
+ + baseDir + AbstractAuthorizationTestImpl.importDataDir + PERMISSION_FILE);
PermissionsRolesList pcrList =
(PermissionsRolesList) fromFile(PermissionsRolesList.class, baseDir
- + AbstractAuthorizationTestImpl.testDataDir + PERMISSION_ROLE_FILE);
+ + AbstractAuthorizationTestImpl.importDataDir + PERMISSION_ROLE_FILE);
logger.info("read permissions-roles from "
- + baseDir + AbstractAuthorizationTestImpl.testDataDir + PERMISSION_ROLE_FILE);
+ + baseDir + AbstractAuthorizationTestImpl.importDataDir + PERMISSION_ROLE_FILE);
AuthZ authZ = AuthZ.get();
for (Permission p : pcList.getPermissions()) {
if (logger.isDebugEnabled()) {
--- /dev/null
+log4j.rootLogger=debug, stdout, R\r
+\r
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender\r
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout\r
+\r
+# Pattern to output the caller's file name and line number.\r
+log4j.appender.stdout.layout.ConversionPattern=%d %-5p [%t] [%c:%L] %m%n\r
+\r
+log4j.appender.R=org.apache.log4j.RollingFileAppender\r
+log4j.appender.R.File=target/test-client.log\r
+\r
+log4j.appender.R.MaxFileSize=100KB\r
+# Keep one backup file\r
+log4j.appender.R.MaxBackupIndex=1\r
+\r
+log4j.appender.R.layout=org.apache.log4j.PatternLayout\r
+log4j.appender.R.layout.ConversionPattern=%d %-5p [%t] [%c:%L] %m%n\r
+\r
+#packages\r
+log4j.logger.org.collectionspace=DEBUG\r
+log4j.logger.org.apache=INFO\r
+log4j.logger.httpclient=INFO\r
+log4j.logger.org.jboss.resteasy=INFO\r
+log4j.logger.org.hibernate=INFO\r
+log4j.logger.org.hibernate.cfg=WARN\r
<modules>
<module>service</module>
+ <module>import</module>
<module>client</module>
</modules>
</project>