You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ma...@apache.org on 2017/05/21 21:47:18 UTC
[33/40] archiva-redback-core git commit: get rid of all jdo jpox
dependencies
get rid of all jdo jpox dependencies
Signed-off-by: olivier lamy <ol...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/archiva-redback-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/archiva-redback-core/commit/0537b856
Tree: http://git-wip-us.apache.org/repos/asf/archiva-redback-core/tree/0537b856
Diff: http://git-wip-us.apache.org/repos/asf/archiva-redback-core/diff/0537b856
Branch: refs/heads/master
Commit: 0537b8562ed46c5b4f56d88410d11ceae32f4320
Parents: effc4a2
Author: olivier lamy <ol...@apache.org>
Authored: Sat Dec 31 10:21:49 2016 +0100
Committer: olivier lamy <ol...@apache.org>
Committed: Sat Dec 31 10:21:49 2016 +0100
----------------------------------------------------------------------
pom.xml | 88 +--
redback-common/pom.xml | 1 -
redback-common/redback-common-jdo/pom.xml | 116 ---
.../common/jdo/UserConfigurableJdoFactory.java | 132 ----
.../common/jdo/test/StoreManagerDebug.java | 113 ---
.../main/resources/META-INF/spring-context.xml | 35 -
.../redback-keys-jdo/pom.xml | 170 -----
.../archiva/redback/keys/jdo/JdoKeyManager.java | 187 -----
.../redback-keys-jdo/src/main/mdo/keys.mdo | 89 ---
.../main/resources/META-INF/spring-context.xml | 32 -
.../redback/keys/jdo/JdoKeyManagerTest.java | 102 ---
.../src/test/resources/spring-context.xml | 48 --
.../redback-rbac-jdo/pom.xml | 156 ----
.../redback/rbac/jdo/JdoRbacManager.java | 711 -------------------
.../archiva/redback/rbac/jdo/JdoTool.java | 500 -------------
.../redback-rbac-jdo/src/main/mdo/rbac-jdo.mdo | 337 ---------
.../main/resources/META-INF/spring-context.xml | 34 -
.../redback/rbac/jdo/JdoRbacManagerTest.java | 219 ------
.../redback/rbac/jdo/RbacJdoModelStaxTest.java | 198 ------
.../src/test/resources/ehcache.xml | 90 ---
.../src/test/resources/spring-context.xml | 85 ---
.../redback-users-jdo/pom.xml | 176 -----
.../redback/users/jdo/JdoUserManager.java | 466 ------------
.../archiva/redback/users/jdo/JdoUserQuery.java | 136 ----
.../archiva/redback/users/jdo/Messages.java | 94 ---
.../redback-users-jdo/src/main/mdo/user.mdo | 162 -----
.../main/resources/META-INF/spring-context.xml | 33 -
.../redback/users/jdo/messages.properties | 18 -
.../redback/users/jdo/JdoUserManagerTest.java | 117 ---
.../src/test/resources/spring-context.xml | 58 --
.../src/test/resources/test.properties | 17 -
31 files changed, 2 insertions(+), 4718 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index c16a926..91954b6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -387,36 +387,8 @@
</exclusion>
</exclusions>
</dependency>
- <dependency>
- <groupId>org.apache.archiva.redback.components</groupId>
- <artifactId>spring-jdo2</artifactId>
- <version>2.2</version>
- <exclusions>
- <exclusion>
- <groupId>xerces</groupId>
- <artifactId>xercesImpl</artifactId>
- </exclusion>
- <exclusion>
- <groupId>xerces</groupId>
- <artifactId>xmlParserAPIs</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
<!-- Other -->
<dependency>
- <groupId>xalan</groupId>
- <artifactId>xalan</artifactId>
- <!-- must run at xalan 2.7.0, as ealier versions embed an ancient version
- of bcel, which iterferes with the ability of jpox/jdo to run -->
- <version>2.7.0</version>
- </dependency>
- <dependency>
- <groupId>xml-apis</groupId>
- <artifactId>xml-apis</artifactId>
- <!-- Xalan 2.7.0 requires xml-apis version 1.3.02+ -->
- <version>1.3.03</version>
- </dependency>
- <dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
@@ -544,45 +516,6 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>jpox</groupId>
- <artifactId>jpox</artifactId>
- <version>1.1.9-1</version>
- <scope>compile</scope>
- <exclusions>
- <!-- targeting JDK 1.4 we don't need this -->
- <exclusion>
- <groupId>javax.sql</groupId>
- <artifactId>jdbc-stdext</artifactId>
- </exclusion>
- <exclusion>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- </exclusion>
-
- <exclusion>
- <groupId>javax.resource</groupId>
- <artifactId>connector</artifactId>
- </exclusion>
- <exclusion>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- </exclusion>
-
- </exclusions>
- </dependency>
- <dependency>
- <groupId>jpox</groupId>
- <artifactId>jpox-ehcache</artifactId>
- <version>1.1.9</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>ehcache</groupId>
- <artifactId>ehcache</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>13.0.1</version>
@@ -697,23 +630,11 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.7</source>
+ <target>1.7</target>
</configuration>
</plugin>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jpox-maven-plugin</artifactId>
- <version>1.1.7</version>
- <dependencies>
- <dependency>
- <groupId>org.apache.bcel</groupId>
- <artifactId>bcel</artifactId>
- <version>6.0</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
<groupId>org.codehaus.modello</groupId>
<artifactId>modello-maven-plugin</artifactId>
<version>1.7</version>
@@ -733,11 +654,6 @@
</configuration>
</plugin>
<plugin>
- <groupId>org.apache.archiva.redback.components.modello</groupId>
- <artifactId>jpox-modello-maven-plugin</artifactId>
- <version>1.0</version>
- </plugin>
- <plugin>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa-maven-plugin</artifactId>
<version>${openjpa.version}</version>
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-common/pom.xml
----------------------------------------------------------------------
diff --git a/redback-common/pom.xml b/redback-common/pom.xml
index cefc84f..42e1350 100644
--- a/redback-common/pom.xml
+++ b/redback-common/pom.xml
@@ -29,7 +29,6 @@
<name>Redback :: Commons</name>
<packaging>pom</packaging>
<modules>
- <module>redback-common-jdo</module>
<module>redback-common-ldap</module>
<module>redback-common-test-resources</module>
<module>redback-common-jpa</module>
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-common/redback-common-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/redback-common/redback-common-jdo/pom.xml b/redback-common/redback-common-jdo/pom.xml
deleted file mode 100644
index 275c641..0000000
--- a/redback-common/redback-common-jdo/pom.xml
+++ /dev/null
@@ -1,116 +0,0 @@
-<?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.
- -->
-<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/maven-v4_0_0.xsd">
-
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-common</artifactId>
- <version>2.5-SNAPSHOT</version>
- </parent>
-
- <artifactId>redback-common-jdo</artifactId>
- <packaging>bundle</packaging>
- <name>Redback :: JDO Common API</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.archiva.redback.components</groupId>
- <artifactId>spring-jdo2</artifactId>
- </dependency>
- <dependency>
- <groupId>jpox</groupId>
- <artifactId>jpox</artifactId>
- <scope>compile</scope>
- <exclusions>
- <!-- targeting JDK 1.4 we don't need this -->
- <exclusion>
- <groupId>javax.sql</groupId>
- <artifactId>jdbc-stdext</artifactId>
- </exclusion>
- <exclusion>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- </exclusion>
-
- <exclusion>
- <groupId>javax.resource</groupId>
- <artifactId>connector</artifactId>
- </exclusion>
- <exclusion>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- </exclusion>
-
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-configuration</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context-support</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <configuration>
- <instructions>
- <Export-Package>
- org.apache.archiva.redback.common.jdo*;version=${project.version};-split-package:=merge-first
- </Export-Package>
- <Import-Package>
- javax.annotation,
- javax.inject;version="[1,2)",
- javax.jdo;version="[2,3)",
- org.apache.archiva.redback.components.jdo;version=${project.version},
- org.apache.archiva.redback.configuration;version=${project.version},
- org.apache.commons.lang;version="[2.6,3)",
- org.codehaus.plexus.interpolation;version="[1.9,2)",
- org.jpox*;version="[1.1,2)",
- org.springframework.stereotype;version="[3,4)",
- org.slf4j;resolution:=optional
- </Import-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/UserConfigurableJdoFactory.java
----------------------------------------------------------------------
diff --git a/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/UserConfigurableJdoFactory.java b/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/UserConfigurableJdoFactory.java
deleted file mode 100644
index e511492..0000000
--- a/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/UserConfigurableJdoFactory.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package org.apache.archiva.redback.common.jdo;
-
-/*
- * 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.
- */
-
-import org.apache.archiva.redback.components.jdo.DefaultConfigurableJdoFactory;
-import org.apache.archiva.redback.configuration.UserConfiguration;
-import org.apache.commons.lang.StringUtils;
-import org.codehaus.plexus.interpolation.InterpolationException;
-import org.codehaus.plexus.interpolation.PropertiesBasedValueSource;
-import org.codehaus.plexus.interpolation.StringSearchInterpolator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.PostConstruct;
-import javax.inject.Inject;
-import javax.inject.Named;
-
-/**
- * UserConfigurableJdoFactory
- *
- * @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
- */
-@Service("jdoFactory#users")
-public class UserConfigurableJdoFactory
- extends DefaultConfigurableJdoFactory
-{
-
- private Logger log = LoggerFactory.getLogger( getClass() );
-
- private UserConfiguration userConfiguration;
-
- @Inject
- public UserConfigurableJdoFactory(
- @Named( value = "userConfiguration#default" ) UserConfiguration userConfiguration )
- {
- this.userConfiguration = userConfiguration;
- }
-
- private String getConfigString( String key, String currentValue, String defaultValue )
- {
- String valueFromSysProps = System.getProperty( "redback." + key );
- if ( StringUtils.isNotEmpty( valueFromSysProps ) )
- {
- return valueFromSysProps;
- }
- String value = null;
- if ( StringUtils.isNotEmpty( currentValue ) )
- {
- value = userConfiguration.getString( key, currentValue );
- }
- else
- {
- value = userConfiguration.getString( key, defaultValue );
- }
- // do some interpolation as we can have some ${plexus.home} etc...
- StringSearchInterpolator interpolator = new StringSearchInterpolator();
- interpolator.addValueSource( new PropertiesBasedValueSource( System.getProperties() ) );
-
- try
- {
- return interpolator.interpolate( value );
- }
- catch ( InterpolationException e )
- {
- // ignore interpolation issue
- log.warn( "skip issue during interpolation {}", e.getMessage() );
- return value;
- }
- }
-
- @PostConstruct
- public void initialize()
- {
- String jdbcDriverName =
- getConfigString( "jdbc.driver.name", super.getDriverName(), "org.apache.derby.jdbc.EmbeddedDriver" );
- String jdbcUrl =
- getConfigString( "jdbc.url", super.getUrl(), "jdbc:derby:${plexus.home}/database;create=true" );
-
- String jdbcUsername = getConfigString( "jdbc.username", super.getUserName(), "sa" );
- String jdbcPassword = getConfigString( "jdbc.password", super.getPassword(), "" );
-
- super.setDriverName( jdbcDriverName );
- super.setUrl( jdbcUrl );
- super.setUserName( jdbcUsername );
- super.setPassword( jdbcPassword );
-
- if ( StringUtils.isEmpty( super.persistenceManagerFactoryClass ) )
- {
- super.setPersistenceManagerFactoryClass( "org.jpox.PersistenceManagerFactoryImpl" );
- }
-
- if ( ( super.otherProperties == null ) || super.otherProperties.isEmpty() )
- {
- super.setProperty( "org.jpox.autoCreateSchema", "true" );
- super.setProperty( "org.jpox.validateSchema", "false" );
- super.setProperty( "org.jpox.validateTables", "false" );
- super.setProperty( "org.jpox.validateConstraints", "false" );
- super.setProperty( "org.jpox.transactionIsolation", "READ_COMMITTED" );
- super.setProperty( "org.jpox.rdbms.dateTimezone", "JDK_DEFAULT_TIMEZONE" );
- }
-
- super.initialize();
- }
-
- public UserConfiguration getUserConfiguration()
- {
- return userConfiguration;
- }
-
- public void setUserConfiguration( UserConfiguration userConfiguration )
- {
- this.userConfiguration = userConfiguration;
- }
-}
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/test/StoreManagerDebug.java
----------------------------------------------------------------------
diff --git a/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/test/StoreManagerDebug.java b/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/test/StoreManagerDebug.java
deleted file mode 100644
index ea57a51..0000000
--- a/redback-common/redback-common-jdo/src/main/java/org/apache/archiva/redback/common/jdo/test/StoreManagerDebug.java
+++ /dev/null
@@ -1,113 +0,0 @@
-package org.apache.archiva.redback.common.jdo.test;
-
-/*
- * 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.
- */
-
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-import javax.jdo.PersistenceManager;
-
-import org.jpox.AbstractPersistenceManagerFactory;
-import org.jpox.ClassLoaderResolver;
-import org.jpox.plugin.ConfigurationElement;
-import org.jpox.plugin.Extension;
-import org.jpox.store.rdbms.RDBMSManager;
-
-/**
- * A extension to JPOX store manager that allows counting the SQL queries
- *
- * @author Carlos Sanchez
- */
-public class StoreManagerDebug
- extends RDBMSManager
-{
- private static int counter;
-
- public StoreManagerDebug( ClassLoaderResolver clr, AbstractPersistenceManagerFactory pmf, String userName,
- String password )
- {
- super( clr, pmf, userName, password );
- }
-
- /**
- * This method will change JPOX store manager extension so it uses our class instead of whatever is configured in
- * the plugin.xml
- *
- * @param pmf
- */
- public static void setup( AbstractPersistenceManagerFactory pmf )
- {
- /* set our own Store Manager to allow counting SQL statements */
- Extension[] extensions =
- pmf.getPMFContext().getPluginManager().getExtensionPoint( "org.jpox.store_manager" ).getExtensions();
- Extension e = extensions[0];
- for ( ConfigurationElement element : e.getConfigurationElements() )
- {
- element.putAttribute( "class-name", StoreManagerDebug.class.getName() );
- }
- }
-
- /**
- * Get the currently configured store manager from JPOX. Will fail if
- * {@link #setup(AbstractPersistenceManagerFactory)} is not called first.
- *
- * @param persistenceManager
- * @return
- */
- public static StoreManagerDebug getConfiguredStoreManager( PersistenceManager persistenceManager )
- {
- return (StoreManagerDebug) ( (org.jpox.PersistenceManager) persistenceManager ).getStoreManager();
- }
-
- @Override
- public int[] executeStatementBatch( String stmt, PreparedStatement ps )
- throws SQLException
- {
- counter++;
- return super.executeStatementBatch( stmt, ps );
- }
-
- @Override
- public ResultSet executeStatementQuery( String stmt, PreparedStatement ps )
- throws SQLException
- {
- counter++;
- return super.executeStatementQuery( stmt, ps );
- }
-
- @Override
- public int executeStatementUpdate( String stmt, PreparedStatement ps )
- throws SQLException
- {
- counter++;
- return super.executeStatementUpdate( stmt, ps );
- }
-
- public void resetCounter()
- {
- counter = 0;
- }
-
- public int counter()
- {
- return counter;
- }
-}
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-common/redback-common-jdo/src/main/resources/META-INF/spring-context.xml
----------------------------------------------------------------------
diff --git a/redback-common/redback-common-jdo/src/main/resources/META-INF/spring-context.xml b/redback-common/redback-common-jdo/src/main/resources/META-INF/spring-context.xml
deleted file mode 100644
index 86a9fe9..0000000
--- a/redback-common/redback-common-jdo/src/main/resources/META-INF/spring-context.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- ~ 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.
- -->
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
- default-lazy-init="true">
-
- <bean name="jdoFactory#users" class="org.apache.archiva.redback.common.jdo.UserConfigurableJdoFactory">
- <constructor-arg>
- <ref bean="userConfiguration#default"/>
- </constructor-arg>
- <!--
- <property name="config" ref="userConfiguration#default"/>
- -->
- </bean>
-</beans>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-keys/redback-keys-providers/redback-keys-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/redback-keys/redback-keys-providers/redback-keys-jdo/pom.xml b/redback-keys/redback-keys-providers/redback-keys-jdo/pom.xml
deleted file mode 100644
index abf709c..0000000
--- a/redback-keys/redback-keys-providers/redback-keys-jdo/pom.xml
+++ /dev/null
@@ -1,170 +0,0 @@
-<?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.
- -->
-<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/maven-v4_0_0.xsd">
-
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-keys-providers</artifactId>
- <version>2.5-SNAPSHOT</version>
- </parent>
-
- <artifactId>redback-keys-jdo</artifactId>
- <packaging>jar</packaging>
- <name>Redback :: Key Management Provider :: JDO</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-keys-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-common-jdo</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context-support</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-keys-tests</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>net.java.dev.stax-utils</groupId>
- <artifactId>stax-utils</artifactId>
- <version>20060502</version>
- <exclusions>
- <exclusion>
- <groupId>com.bea.xml</groupId>
- <artifactId>jsr173-ri</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-simple</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <executions>
- <execution>
- <id>bundle-manifest</id>
- <phase>process-classes</phase>
- <goals>
- <goal>manifest</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.codehaus.modello</groupId>
- <artifactId>modello-maven-plugin</artifactId>
- <configuration>
- <version>1.0.1</version>
- <packageWithVersion>false</packageWithVersion>
- <models>
- <model>src/main/mdo/keys.mdo</model>
- </models>
- </configuration>
- <executions>
- <execution>
- <id>modello-java</id>
- <goals>
- <goal>java</goal>
- <goal>stax-reader</goal>
- <goal>stax-writer</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.archiva.redback.components.modello</groupId>
- <artifactId>jpox-modello-maven-plugin</artifactId>
- <configuration>
- <version>1.0.1</version>
- <packageWithVersion>false</packageWithVersion>
- <models>
- <model>src/main/mdo/keys.mdo</model>
- </models>
- </configuration>
- <executions>
- <execution>
- <id>modello-jpox</id>
- <goals>
- <goal>jpox-metadata-class</goal>
- </goals>
- </execution>
- <execution>
- <id>jpox-jdo-mapping</id>
- <goals>
- <goal>jpox-jdo-mapping</goal>
- </goals>
- <configuration>
- <outputDirectory>${project.build.outputDirectory}/org/apache/archiva/redback/keys/jdo</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jpox-maven-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>enhance</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
-</project>
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/java/org/apache/archiva/redback/keys/jdo/JdoKeyManager.java
----------------------------------------------------------------------
diff --git a/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/java/org/apache/archiva/redback/keys/jdo/JdoKeyManager.java b/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/java/org/apache/archiva/redback/keys/jdo/JdoKeyManager.java
deleted file mode 100644
index 1537f57..0000000
--- a/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/java/org/apache/archiva/redback/keys/jdo/JdoKeyManager.java
+++ /dev/null
@@ -1,187 +0,0 @@
-package org.apache.archiva.redback.keys.jdo;
-
-/*
- * 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.
- */
-
-import org.apache.archiva.redback.components.jdo.JdoFactory;
-import org.apache.archiva.redback.components.jdo.RedbackJdoUtils;
-import org.apache.archiva.redback.components.jdo.RedbackObjectNotFoundException;
-import org.apache.archiva.redback.components.jdo.RedbackStoreException;
-import org.apache.archiva.redback.keys.AuthenticationKey;
-import org.apache.archiva.redback.keys.AbstractKeyManager;
-import org.apache.archiva.redback.keys.KeyManagerException;
-import org.apache.archiva.redback.keys.KeyNotFoundException;
-import org.codehaus.plexus.util.StringUtils;
-import org.jpox.PersistenceManagerFactoryImpl;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.PostConstruct;
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.jdo.PersistenceManager;
-import javax.jdo.PersistenceManagerFactory;
-import java.util.Calendar;
-import java.util.List;
-
-/**
- * JdoKeyManager
- *
- * @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
- *
- */
-@Service( "keyManager#jdo" )
-public class JdoKeyManager
- extends AbstractKeyManager
-{
- @Inject
- @Named( value = "jdoFactory#users" )
- private JdoFactory jdoFactory;
-
- private PersistenceManagerFactory pmf;
-
- public AuthenticationKey createKey( String principal, String purpose, int expirationMinutes )
- throws KeyManagerException
- {
- JdoAuthenticationKey authkey = new JdoAuthenticationKey();
- authkey.setKey( super.generateUUID() );
- authkey.setForPrincipal( principal );
- authkey.setPurpose( purpose );
-
- Calendar now = getNowGMT();
- authkey.setDateCreated( now.getTime() );
-
- if ( expirationMinutes >= 0 )
- {
- Calendar expiration = getNowGMT();
- expiration.add( Calendar.MINUTE, expirationMinutes );
- authkey.setDateExpires( expiration.getTime() );
- }
-
- return addKey( authkey );
- }
-
- public AuthenticationKey addKey( AuthenticationKey key )
- {
- return (AuthenticationKey) RedbackJdoUtils.addObject( getPersistenceManager(), key );
- }
-
- public void eraseDatabase()
- {
- RedbackJdoUtils.removeAll( getPersistenceManager(), JdoAuthenticationKey.class );
- RedbackJdoUtils.removeAll( getPersistenceManager(), RedbackKeyManagementJdoModelloMetadata.class );
- }
-
- public AuthenticationKey findKey( String key )
- throws KeyNotFoundException, KeyManagerException
- {
- if ( StringUtils.isEmpty( key ) )
- {
- throw new KeyNotFoundException( "Empty key not found." );
- }
-
- try
- {
- JdoAuthenticationKey authkey = (JdoAuthenticationKey) RedbackJdoUtils.getObjectById(
- getPersistenceManager(), JdoAuthenticationKey.class, key );
-
- if ( authkey == null )
- {
- throw new KeyNotFoundException( "Key [" + key + "] not found." );
- }
- assertNotExpired( authkey );
-
- return authkey;
- }
- catch ( RedbackObjectNotFoundException e )
- {
- throw new KeyNotFoundException( e.getMessage() );
- }
- catch ( RedbackStoreException e )
- {
- throw new KeyManagerException(
- "Unable to get " + JdoAuthenticationKey.class.getName() + "', key '" + key + "' from jdo store." );
- }
- }
-
- public void deleteKey( AuthenticationKey authkey )
- throws KeyManagerException
- {
- RedbackJdoUtils.removeObject( getPersistenceManager(), authkey );
- }
-
- public void deleteKey( String key )
- throws KeyManagerException
- {
- try
- {
- AuthenticationKey authkey = findKey( key );
- RedbackJdoUtils.removeObject( getPersistenceManager(), authkey );
- }
- catch ( KeyNotFoundException e )
- {
- // not found? nothing to do.
- }
- }
-
- @SuppressWarnings( "unchecked" )
- public List<AuthenticationKey> getAllKeys()
- {
- return RedbackJdoUtils.getAllObjectsDetached( getPersistenceManager(), JdoAuthenticationKey.class );
- }
-
- @PostConstruct
- public void initialize()
- {
- pmf = jdoFactory.getPersistenceManagerFactory();
-
- if ( pmf instanceof PersistenceManagerFactoryImpl )
- {
- PersistenceManagerFactoryImpl jpoxpmf = (PersistenceManagerFactoryImpl) pmf;
- if ( !StringUtils.equals( "JDK_DEFAULT_TIMEZONE", jpoxpmf.getDateTimezone() ) )
- {
- throw new RuntimeException( "The JdoFactory property 'org.jpox.rdbms.dateTimezone' MUST BE "
- + "Set to 'JDK_DEFAULT_TIMEZONE' in order for jpox and JdoKeyManager to operate correctly." );
- }
- }
- }
-
- private PersistenceManager getPersistenceManager()
- {
- PersistenceManager pm = pmf.getPersistenceManager();
-
- pm.getFetchPlan().setMaxFetchDepth( 5 );
-
- return pm;
- }
-
- public String getId()
- {
- return "JDO Key Manager - " + this.getClass().getName();
- }
-
- public JdoFactory getJdoFactory()
- {
- return jdoFactory;
- }
-
- public void setJdoFactory( JdoFactory jdoFactory )
- {
- this.jdoFactory = jdoFactory;
- }
-}
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/mdo/keys.mdo
----------------------------------------------------------------------
diff --git a/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/mdo/keys.mdo b/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/mdo/keys.mdo
deleted file mode 100644
index 5c2ff59..0000000
--- a/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/mdo/keys.mdo
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- ~ 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.
- -->
-
-<model>
- <id>redback-keys-jdo</id>
- <name>RedbackKeyManagementJdo</name>
- <version>1.0.1</version>
- <description>Archiva Redback :: Key Management JDO Store.</description>
- <defaults>
- <default>
- <key>package</key>
- <value>org.apache.archiva.redback.keys.jdo</value>
- </default>
- </defaults>
-
- <classes>
- <class stash.storable="false" rootElement="true">
- <name>AuthenticationKeyDatabase</name>
- <version>1.0.1+</version>
- <fields>
- <field jpox.column="AUTH_KEYS">
- <name>keys</name>
- <version>1.0.1+</version>
- <association>
- <type>JdoAuthenticationKey</type>
- <multiplicity>*</multiplicity>
- </association>
- </field>
- </fields>
- </class>
- <class stash.storable="true" jpox.use-identifiers-as-primary-key="false">
- <name>JdoAuthenticationKey</name>
- <version>1.0.0+</version>
- <interfaces>
- <interface>org.apache.archiva.redback.keys.AuthenticationKey</interface>
- </interfaces>
- <fields>
- <field jpox.primary-key="true"
- jpox.value-strategy="off"
- jpox.persistence-modifier="persistent"
- jpox.column="AUTHKEY">
- <name>key</name>
- <version>1.0.0+</version>
- <type>String</type>
- <identifier>true</identifier>
- </field>
- <field>
- <name>forPrincipal</name>
- <version>1.0.0+</version>
- <type>String</type>
- <identifier>true</identifier>
- </field>
- <field>
- <name>purpose</name>
- <version>1.0.0+</version>
- <type>String</type>
- </field>
- <field xml.format="long">
- <name>dateCreated</name>
- <version>1.0.0+</version>
- <type>Date</type>
- </field>
- <field xml.format="long">
- <name>dateExpires</name>
- <version>1.0.0+</version>
- <type>Date</type>
- </field>
- </fields>
- </class>
- </classes>
-</model>
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/resources/META-INF/spring-context.xml
----------------------------------------------------------------------
diff --git a/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/resources/META-INF/spring-context.xml b/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/resources/META-INF/spring-context.xml
deleted file mode 100644
index b757d07..0000000
--- a/redback-keys/redback-keys-providers/redback-keys-jdo/src/main/resources/META-INF/spring-context.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- ~ 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.
- -->
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-3.0.xsd"
- default-lazy-init="true">
-
- <context:annotation-config />
- <context:component-scan base-package="org.apache.archiva.redback.keys.jdo"/>
-</beans>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/java/org/apache/archiva/redback/keys/jdo/JdoKeyManagerTest.java
----------------------------------------------------------------------
diff --git a/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/java/org/apache/archiva/redback/keys/jdo/JdoKeyManagerTest.java b/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/java/org/apache/archiva/redback/keys/jdo/JdoKeyManagerTest.java
deleted file mode 100644
index 70f6d73..0000000
--- a/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/java/org/apache/archiva/redback/keys/jdo/JdoKeyManagerTest.java
+++ /dev/null
@@ -1,102 +0,0 @@
-package org.apache.archiva.redback.keys.jdo;
-
-/*
- * 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.
- */
-
-import org.apache.archiva.redback.components.jdo.DefaultConfigurableJdoFactory;
-import org.apache.archiva.redback.keys.KeyManager;
-import org.apache.archiva.redback.keys.KeyManagerTestCase;
-import org.jpox.SchemaTool;
-import org.junit.Before;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.jdo.PersistenceManager;
-import javax.jdo.PersistenceManagerFactory;
-import java.net.URL;
-import java.util.Map;
-import java.util.Properties;
-
-/**
- * JdoKeyManagerTest
- *
- * @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
- *
- */
-public class JdoKeyManagerTest
- extends KeyManagerTestCase
-{
-
- @Inject
- @Named(value = "jdoFactory#users")
- DefaultConfigurableJdoFactory jdoFactory;
-
- @Inject @Named(value = "keyManager#jdo")
- KeyManager keyManager;
-
-
- @Before
- public void setUp()
- throws Exception
- {
-
- super.setUp();
-
- assertEquals( DefaultConfigurableJdoFactory.class.getName(), jdoFactory.getClass().getName() );
-
- jdoFactory.setPersistenceManagerFactoryClass( "org.jpox.PersistenceManagerFactoryImpl" ); //$NON-NLS-1$
-
- jdoFactory.setDriverName( "org.hsqldb.jdbcDriver" ); //$NON-NLS-1$
-
- jdoFactory.setUrl( "jdbc:hsqldb:mem:" + getName() ); //$NON-NLS-1$
-
- jdoFactory.setUserName( "sa" ); //$NON-NLS-1$
-
- jdoFactory.setPassword( "" ); //$NON-NLS-1$
-
- jdoFactory.setProperty( "org.jpox.transactionIsolation", "READ_COMMITTED" ); //$NON-NLS-1$ //$NON-NLS-2$
-
- jdoFactory.setProperty( "org.jpox.poid.transactionIsolation", "READ_COMMITTED" ); //$NON-NLS-1$ //$NON-NLS-2$
-
- jdoFactory.setProperty( "org.jpox.autoCreateSchema", "true" ); //$NON-NLS-1$ //$NON-NLS-2$
-
- jdoFactory.setProperty( "org.jpox.rdbms.dateTimezone", "JDK_DEFAULT_TIMEZONE" ); //$NON-NLS-1$ //$NON-NLS-2$
-
- Properties properties = jdoFactory.getProperties();
-
- for ( Map.Entry<Object,Object> entry : properties.entrySet() )
- {
- System.setProperty( (String) entry.getKey(), (String) entry.getValue() );
- }
-
- SchemaTool.createSchemaTables( new URL[] { getClass()
- .getResource( "/org/apache/archiva/redback/keys/jdo/package.jdo" ) }, new URL[] {}, null, false, null ); //$NON-NLS-1$
-
- PersistenceManagerFactory pmf = jdoFactory.getPersistenceManagerFactory();
-
- assertNotNull( pmf );
-
- PersistenceManager pm = pmf.getPersistenceManager();
-
- pm.close();
- keyManager.eraseDatabase();
- setKeyManager( keyManager );
- }
-
-}
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/resources/spring-context.xml
----------------------------------------------------------------------
diff --git a/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/resources/spring-context.xml b/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/resources/spring-context.xml
deleted file mode 100644
index dd75f72..0000000
--- a/redback-keys/redback-keys-providers/redback-keys-jdo/src/test/resources/spring-context.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0"?>
-
-<!--
- ~ 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.
- -->
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
-
- <bean name="jdoFactory#users" class="org.apache.archiva.redback.components.jdo.DefaultConfigurableJdoFactory">
- <property name="driverName" value="org.hsqldb.jdbcDriver"/>
- <property name="url" value="jdbc:hsqldb:mem:redback-users-tests" />
- <property name="userName" value="sa"/>
- <property name="password" value=""/>
- <property name="persistenceManagerFactoryClass" value="org.jpox.PersistenceManagerFactoryImpl"/>
- <property name="otherProperties">
- <props>
- <prop key="org.jpox.rdbms.dateTimezone">JDK_DEFAULT_TIMEZONE</prop>
- </props>
- </property>
- </bean>
-
- <bean name="userConfiguration#default" class="org.apache.archiva.redback.configuration.DefaultUserConfiguration">
- <property name="registry" ref="test-conf"/>
- </bean>
-
- <bean name="commons-configuration" class="org.apache.archiva.redback.components.registry.commons.CommonsConfigurationRegistry">
- </bean>
-
- <alias name="commons-configuration" alias="test-conf"/>
-
-</beans>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-rbac/redback-rbac-providers/redback-rbac-jdo/pom.xml
----------------------------------------------------------------------
diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/pom.xml b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/pom.xml
deleted file mode 100644
index d3c4c73..0000000
--- a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/pom.xml
+++ /dev/null
@@ -1,156 +0,0 @@
-<?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.
- -->
-<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/maven-v4_0_0.xsd">
-
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-rbac-providers</artifactId>
- <version>2.5-SNAPSHOT</version>
- </parent>
-
- <artifactId>redback-rbac-jdo</artifactId>
- <packaging>bundle</packaging>
- <name>Redback :: RBAC Provider :: JDO</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-rbac-model</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context-support</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-rbac-tests</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.archiva.redback</groupId>
- <artifactId>redback-common-jdo</artifactId>
- </dependency>
- <dependency>
- <groupId>net.java.dev.stax-utils</groupId>
- <artifactId>stax-utils</artifactId>
- <version>20060502</version>
- <exclusions>
- <exclusion>
- <groupId>com.bea.xml</groupId>
- <artifactId>jsr173-ri</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-simple</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>jpox</groupId>
- <artifactId>jpox-ehcache</artifactId>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>ehcache</groupId>
- <artifactId>ehcache</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- </plugin>
- <plugin>
- <groupId>org.codehaus.modello</groupId>
- <artifactId>modello-maven-plugin</artifactId>
- <configuration>
- <version>1.0.1</version>
- <packageWithVersion>false</packageWithVersion>
- <models>
- <model>src/main/mdo/rbac-jdo.mdo</model>
- </models>
- </configuration>
- <executions>
- <execution>
- <id>modello-java</id>
- <goals>
- <goal>java</goal>
- <!-- TODO: Move these to plexus-security-authorization-rbac-model -->
- <goal>stax-reader</goal>
- <goal>stax-writer</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.archiva.redback.components.modello</groupId>
- <artifactId>jpox-modello-maven-plugin</artifactId>
- <configuration>
- <version>1.0.1</version>
- <packageWithVersion>false</packageWithVersion>
- <models>
- <model>src/main/mdo/rbac-jdo.mdo</model>
- </models>
- </configuration>
- <executions>
- <execution>
- <id>modello-jpox</id>
- <goals>
- <goal>jpox-metadata-class</goal>
- <goal>jpox-jdo-mapping</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jpox-maven-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>enhance</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
-</project>
http://git-wip-us.apache.org/repos/asf/archiva-redback-core/blob/0537b856/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/apache/archiva/redback/rbac/jdo/JdoRbacManager.java
----------------------------------------------------------------------
diff --git a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/apache/archiva/redback/rbac/jdo/JdoRbacManager.java b/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/apache/archiva/redback/rbac/jdo/JdoRbacManager.java
deleted file mode 100644
index ac565a3..0000000
--- a/redback-rbac/redback-rbac-providers/redback-rbac-jdo/src/main/java/org/apache/archiva/redback/rbac/jdo/JdoRbacManager.java
+++ /dev/null
@@ -1,711 +0,0 @@
-package org.apache.archiva.redback.rbac.jdo;
-
-/*
- * 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.
- */
-
-import org.apache.archiva.redback.rbac.AbstractRBACManager;
-import org.apache.archiva.redback.rbac.Operation;
-import org.apache.archiva.redback.rbac.RBACManagerListener;
-import org.apache.archiva.redback.rbac.RbacManagerException;
-import org.apache.archiva.redback.rbac.RbacObjectInvalidException;
-import org.apache.archiva.redback.rbac.RbacObjectNotFoundException;
-import org.apache.archiva.redback.rbac.RbacPermanentException;
-import org.apache.archiva.redback.rbac.Resource;
-import org.apache.archiva.redback.rbac.Role;
-import org.apache.archiva.redback.rbac.UserAssignment;
-import org.apache.archiva.redback.rbac.Permission;
-import org.apache.archiva.redback.rbac.RBACObjectAssertions;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.PostConstruct;
-import javax.inject.Inject;
-import javax.jdo.JDOHelper;
-import javax.jdo.PersistenceManager;
-import javax.jdo.Transaction;
-import java.util.Collection;
-import java.util.List;
-
-/**
- * JdoRbacManager:
- *
- * @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
- * @author Jesse McConnell
- *
- */
-@Service( "rbacManager#jdo" )
-public class JdoRbacManager
- extends AbstractRBACManager
- implements RBACManagerListener
-{
- @Inject
- private JdoTool jdo;
-
- private boolean enableCache = true;
-
- // private static final String ROLE_DETAIL = "role-child-detail";
- private static final String ROLE_DETAIL = null;
-
- // ----------------------------------------------------------------------
- // Role methods
- // ----------------------------------------------------------------------
-
- /**
- * Creates an implementation specific {@link Role}.
- *
- * Note: this method does not add the {@link Role} to the underlying store.
- * a call to {@link #saveRole(Role)} is required to track the role created with this
- * method call.
- *
- * @param name the name.
- * @return the new {@link Role} object with an empty (non-null) {@link Role#getChildRoleNames()} object.
- */
- public Role createRole( String name )
- {
- Role role;
-
- try
- {
- role = getRole( name );
- }
- catch ( RbacManagerException e )
- {
- role = new JdoRole();
- role.setName( name );
- }
-
- return role;
- }
-
- /**
- * Method addRole
- *
- * @param role
- */
- public Role saveRole( Role role )
- throws RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( role );
-
- return jdo.saveObject( role, new String[]{ ROLE_DETAIL } );
- }
-
- public boolean roleExists( Role role )
- {
- return jdo.objectExists( role );
- }
-
- public boolean roleExists( String name )
- {
- try
- {
- return jdo.objectExistsById( JdoRole.class, name );
- }
- catch ( RbacManagerException e )
- {
- return false;
- }
- }
-
- /**
- * @param roleName
- * @return
- * @throws RbacObjectNotFoundException
- * @throws RbacManagerException
- */
- public Role getRole( String roleName )
- throws RbacObjectNotFoundException, RbacManagerException
- {
- return jdo.getObjectById( JdoRole.class, roleName, ROLE_DETAIL );
- }
-
- /**
- * Method getRoles
- */
- @SuppressWarnings( "unchecked" )
- public List<Role> getAllRoles()
- throws RbacManagerException
- {
- return (List<Role>) jdo.getAllObjects( JdoRole.class );
- }
-
- public void removeRole( Role role )
- throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( role );
-
- if ( role.isPermanent() )
- {
- throw new RbacPermanentException( "Unable to delete permanent role [" + role.getName() + "]" );
- }
-
- jdo.removeObject( role );
- }
-
- public void saveRoles( Collection<Role> roles )
- throws RbacObjectInvalidException, RbacManagerException
- {
- if ( roles == null )
- {
- // Nothing to do.
- return;
- }
-
- // This is done in JdoRbacManager as opposed to JdoTool as we need to assertValid() on each role and
- // also wrap the entire collection into a single atomic save/makePersistent.
-
- PersistenceManager pm = jdo.getPersistenceManager();
- Transaction tx = pm.currentTransaction();
-
- try
- {
- tx.begin();
-
- for ( Role role : roles )
- {
- if ( ( JDOHelper.getObjectId( role ) != null ) && !JDOHelper.isDetached( role ) )
- {
- // This is a fatal error that means we need to fix our code.
- // Leave it as a JDOUserException, it's intentional.
- throw new RbacManagerException( "Existing Role is not detached: " + role );
- }
-
- RBACObjectAssertions.assertValid( role );
-
- pm.makePersistent( role );
- }
-
- tx.commit();
- }
- finally
- {
- jdo.rollbackIfActive( tx );
- }
- }
-
- // ----------------------------------------------------------------------
- // Permission methods
- // ----------------------------------------------------------------------
-
- /**
- * Creates an implementation specific {@link Permission}.
- *
- * Note: this method does not add the {@link Permission} to the underlying store.
- * a call to {@link #savePermission(Permission)} is required to track the permission created
- * with this method call.
- *
- * @param name the name.
- * @return the new Permission.
- * @throws RbacManagerException
- */
- public Permission createPermission( String name )
- throws RbacManagerException
- {
- Permission permission;
-
- try
- {
- permission = getPermission( name );
- log.debug( "Create Permission [{}] Returning Existing.", name );
- }
- catch ( RbacObjectNotFoundException e )
- {
- permission = new JdoPermission();
- permission.setName( name );
- log.debug( "Create Permission [{}] New JdoPermission.", name );
- }
-
- return permission;
- }
-
- /**
- * Creates an implementation specific {@link Permission} with specified {@link Operation},
- * and {@link Resource} identifiers.
- *
- * Note: this method does not add the Permission, Operation, or Resource to the underlying store.
- * a call to {@link #savePermission(Permission)} is required to track the permission, operation,
- * or resource created with this method call.
- *
- * @param name the name.
- * @param operationName the {@link Operation#setName(String)} value
- * @param resourceIdentifier the {@link Resource#setIdentifier(String)} value
- * @return the new Permission.
- * @throws RbacManagerException
- */
- public Permission createPermission( String name, String operationName, String resourceIdentifier )
- throws RbacManagerException
- {
- Permission permission = new JdoPermission();
- permission.setName( name );
-
- Operation operation;
- try
- {
- operation = getOperation( operationName );
- }
- catch ( RbacObjectNotFoundException e )
- {
- operation = new JdoOperation();
- operation.setName( operationName );
- }
- permission.setOperation( operation );
-
- Resource resource;
- try
- {
- resource = getResource( resourceIdentifier );
- }
- catch ( RbacObjectNotFoundException e )
- {
- resource = new JdoResource();
- resource.setIdentifier( resourceIdentifier );
- }
- permission.setResource( resource );
-
- return permission;
- }
-
- public Permission savePermission( Permission permission )
- throws RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( permission );
-
- return jdo.saveObject( permission, null );
- }
-
- public boolean permissionExists( Permission permission )
- {
- return jdo.objectExists( permission );
- }
-
- public boolean permissionExists( String name )
- {
- try
- {
- return jdo.objectExistsById( JdoPermission.class, name );
- }
- catch ( RbacManagerException e )
- {
- return false;
- }
- }
-
- public Permission getPermission( String permissionName )
- throws RbacObjectNotFoundException, RbacManagerException
- {
- return jdo.getObjectById( JdoPermission.class, permissionName, null );
- }
-
- @SuppressWarnings( "unchecked" )
- public List<Permission> getAllPermissions()
- throws RbacManagerException
- {
- return (List<Permission>) jdo.getAllObjects( JdoPermission.class );
- }
-
- public void removePermission( Permission permission )
- throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( permission );
-
- if ( permission.isPermanent() )
- {
- throw new RbacPermanentException( "Unable to delete permanent permission [" + permission.getName() + "]" );
- }
-
- jdo.removeObject( permission );
- }
-
- // ----------------------------------------------------------------------
- // Operation methods
- // ----------------------------------------------------------------------
-
- /**
- * Creates an implementation specific {@link Operation}.
- *
- * Note: this method does not add the {@link Operation} to the underlying store.
- * a call to {@link #saveOperation(Operation)} is required to track the operation created
- * with this method call.
- *
- * @param name the name.
- * @return the new Operation.
- * @throws RbacManagerException
- */
- public Operation createOperation( String name )
- throws RbacManagerException
- {
- Operation operation;
-
- try
- {
- operation = getOperation( name );
- }
- catch ( RbacObjectNotFoundException e )
- {
- operation = new JdoOperation();
- operation.setName( name );
- }
-
- return operation;
- }
-
- public Operation saveOperation( Operation operation )
- throws RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( operation );
- return jdo.saveObject( operation, null );
- }
-
- public boolean operationExists( Operation operation )
- {
- return jdo.objectExists( operation );
- }
-
- public boolean operationExists( String name )
- {
- try
- {
- return jdo.objectExistsById( JdoOperation.class, name );
- }
- catch ( RbacManagerException e )
- {
- return false;
- }
- }
-
- public Operation getOperation( String operationName )
- throws RbacObjectNotFoundException, RbacManagerException
- {
- return jdo.getObjectById( JdoOperation.class, operationName, null );
- }
-
- @SuppressWarnings( "unchecked" )
- public List<Operation> getAllOperations()
- throws RbacManagerException
- {
- return (List<Operation>) jdo.getAllObjects( JdoOperation.class );
- }
-
- public void removeOperation( Operation operation )
- throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( operation );
-
- if ( operation.isPermanent() )
- {
- throw new RbacPermanentException( "Unable to delete permanent operation [" + operation.getName() + "]" );
- }
-
- jdo.removeObject( operation );
- }
-
- // ----------------------------------------------------------------------
- // Resource methods
- // ----------------------------------------------------------------------
-
- /**
- * Creates an implementation specific {@link Resource}.
- *
- * Note: this method does not add the {@link Resource} to the underlying store.
- * a call to {@link #saveResource(Resource)} is required to track the resource created
- * with this method call.
- *
- * @param identifier the identifier.
- * @return the new Resource.
- * @throws RbacManagerException
- */
- public Resource createResource( String identifier )
- throws RbacManagerException
- {
- Resource resource;
-
- try
- {
- resource = getResource( identifier );
- log.debug( "Create Resource [ {} ] Returning Existing.", identifier );
- }
- catch ( RbacObjectNotFoundException e )
- {
- resource = new JdoResource();
- resource.setIdentifier( identifier );
- log.debug( "Create Resource [ {} ] New JdoResource.", identifier );
- }
-
- return resource;
- }
-
- public Resource saveResource( Resource resource )
- throws RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( resource );
- return jdo.saveObject( resource, null );
- }
-
- public boolean resourceExists( Resource resource )
- {
- return jdo.objectExists( resource );
- }
-
- public boolean resourceExists( String identifier )
- {
- try
- {
- return jdo.objectExistsById( JdoResource.class, identifier );
- }
- catch ( RbacManagerException e )
- {
- return false;
- }
- }
-
- public Resource getResource( String resourceIdentifier )
- throws RbacObjectNotFoundException, RbacManagerException
- {
- return jdo.getObjectById( JdoResource.class, resourceIdentifier, null );
- }
-
- @SuppressWarnings( "unchecked" )
- public List<Resource> getAllResources()
- throws RbacManagerException
- {
- return (List<Resource>) jdo.getAllObjects( JdoResource.class );
- }
-
- public void removeResource( Resource resource )
- throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( resource );
-
- if ( resource.isPermanent() )
- {
- throw new RbacPermanentException(
- "Unable to delete permanent resource [" + resource.getIdentifier() + "]" );
- }
-
- jdo.removeObject( resource );
- }
-
- // ----------------------------------------------------------------------
- // User Assignment methods
- // ----------------------------------------------------------------------
-
- /**
- * Creates an implementation specific {@link UserAssignment}.
- *
- * Note: this method does not add the {@link UserAssignment} to the underlying store.
- * a call to {@link #saveUserAssignment(UserAssignment)} is required to track the user
- * assignment created with this method call.
- *
- * @param principal the principal reference to the user.
- * @return the new UserAssignment with an empty (non-null) {@link UserAssignment#getRoleNames()} object.
- */
- public UserAssignment createUserAssignment( String principal )
- {
- UserAssignment ua;
-
- try
- {
- ua = getUserAssignment( principal );
- }
- catch ( RbacManagerException e )
- {
- ua = new JdoUserAssignment();
- ua.setPrincipal( principal );
- }
-
- return ua;
- }
-
- /**
- * Method addUserAssignment
- *
- * @param userAssignment
- */
- public UserAssignment saveUserAssignment( UserAssignment userAssignment )
- throws RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( "Save User Assignment", userAssignment );
-
- fireRbacUserAssignmentSaved( userAssignment );
-
- return jdo.saveObject( userAssignment, new String[]{ ROLE_DETAIL } );
- }
-
- public boolean userAssignmentExists( String principal )
- {
- try
- {
- return jdo.objectExistsById( JdoUserAssignment.class, principal );
- }
- catch ( RbacManagerException e )
- {
- return false;
- }
- }
-
- public boolean userAssignmentExists( UserAssignment assignment )
- {
- return jdo.objectExists( assignment );
- }
-
- public UserAssignment getUserAssignment( String principal )
- throws RbacObjectNotFoundException, RbacManagerException
- {
- return jdo.getObjectById( JdoUserAssignment.class, principal, ROLE_DETAIL );
- }
-
- /**
- * Method getAssignments
- */
- @SuppressWarnings( "unchecked" )
- public List<UserAssignment> getAllUserAssignments()
- throws RbacManagerException
- {
- return (List<UserAssignment>) jdo.getAllObjects( JdoUserAssignment.class );
- }
-
- /**
- * Method getUserAssignmentsForRoles
- */
- @SuppressWarnings( "unchecked" )
- public List<UserAssignment> getUserAssignmentsForRoles( Collection<String> roleNames )
- throws RbacManagerException
- {
- return (List<UserAssignment>) jdo.getUserAssignmentsForRoles( JdoUserAssignment.class, null, roleNames );
- }
-
- /**
- * Method removeAssignment
- *
- * @param userAssignment
- */
- public void removeUserAssignment( UserAssignment userAssignment )
- throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException
- {
- RBACObjectAssertions.assertValid( userAssignment );
-
- if ( userAssignment.isPermanent() )
- {
- throw new RbacPermanentException(
- "Unable to delete permanent user assignment [" + userAssignment.getPrincipal() + "]" );
- }
-
- fireRbacUserAssignmentRemoved( userAssignment );
-
- jdo.removeObject( userAssignment );
- }
-
- public void eraseDatabase()
- {
- // Must delete in order so that FK constraints don't get violated
- jdo.removeAll( JdoRole.class );
- jdo.removeAll( JdoPermission.class );
- jdo.removeAll( JdoOperation.class );
- jdo.removeAll( JdoResource.class );
- jdo.removeAll( JdoUserAssignment.class );
- jdo.removeAll( RbacJdoModelModelloMetadata.class );
- }
-
- @PostConstruct
- public void initialize()
- {
- super.initialize();
-
- jdo.setListener( this );
- if ( enableCache )
- {
- jdo.enableCache( JdoRole.class );
- jdo.enableCache( JdoOperation.class );
- jdo.enableCache( JdoResource.class );
- jdo.enableCache( JdoUserAssignment.class );
- jdo.enableCache( JdoPermission.class );
- }
- }
-
- public void rbacInit( boolean freshdb )
- {
- fireRbacInit( freshdb );
- }
-
- public void rbacPermissionRemoved( Permission permission )
- {
- fireRbacPermissionRemoved( permission );
- }
-
- public void rbacPermissionSaved( Permission permission )
- {
- fireRbacPermissionSaved( permission );
- }
-
- public void rbacRoleRemoved( Role role )
- {
- fireRbacRoleRemoved( role );
- }
-
- public void rbacRoleSaved( Role role )
- {
- fireRbacRoleSaved( role );
- }
-
-
- public void rbacUserAssignmentSaved( UserAssignment userAssignment )
- {
- fireRbacUserAssignmentSaved( userAssignment );
- }
-
- public void rbacUserAssignmentRemoved( UserAssignment userAssignment )
- {
- fireRbacUserAssignmentRemoved( userAssignment );
- }
-
- public JdoTool getJdo()
- {
- return jdo;
- }
-
- public void setJdo( JdoTool jdo )
- {
- this.jdo = jdo;
- }
-
- public boolean isEnableCache()
- {
- return enableCache;
- }
-
- public void setEnableCache( boolean enableCache )
- {
- this.enableCache = enableCache;
- }
-
- @Override
- public boolean isFinalImplementation()
- {
- return true;
- }
-
- public String getDescriptionKey()
- {
- return "archiva.redback.rbacmanager.jdo";
- }
-
- public boolean isReadOnly()
- {
- return false;
- }
-}