[MRM-1481] Ability to do user management through xmlrpc

Submitted by Maria Catherine Tan

git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1156322 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Olivier Lamy 2011-08-10 19:17:50 +00:00
parent b36ed8a621
commit f4a130e2c5
4 changed files with 84 additions and 0 deletions

View File

@ -226,6 +226,16 @@
<groupId>org.codehaus.redback</groupId> <groupId>org.codehaus.redback</groupId>
<artifactId>redback-common-integrations</artifactId> <artifactId>redback-common-integrations</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.codehaus.redback</groupId>
<artifactId>redback-xmlrpc-services</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.codehaus.redback</groupId>
<artifactId>redback-xmlrpc-security</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Other dependencies --> <!-- Other dependencies -->
<dependency> <dependency>
<groupId>org.apache.archiva</groupId> <groupId>org.apache.archiva</groupId>

View File

@ -68,7 +68,33 @@
<constructor-arg ref="repositoryMerger#maven2"/> <constructor-arg ref="repositoryMerger#maven2"/>
<constructor-arg ref="auditListener#logging"/> <constructor-arg ref="auditListener#logging"/>
<constructor-arg ref="commons-configuration"/> <constructor-arg ref="commons-configuration"/>
</bean>
<!-- Redback Web Services -->
<bean name="redbackRoleService" lazy-init="true" scope="singleton"
class="org.codehaus.redback.xmlrpc.service.RoleServiceImpl">
<constructor-arg ref="rBACManager#cached"/>
<constructor-arg ref="roleManager"/>
</bean>
<bean name="redbackOperationService" lazy-init="true" scope="singleton"
class="org.codehaus.redback.xmlrpc.service.OperationServiceImpl">
<constructor-arg ref="rBACManager#cached"/>
</bean>
<bean name="redbackPermissionService" lazy-init="true" scope="singleton"
class="org.codehaus.redback.xmlrpc.service.PermissionServiceImpl">
<constructor-arg ref="rBACManager#cached"/>
</bean>
<bean name="redbackResourceService" lazy-init="true" scope="singleton"
class="org.codehaus.redback.xmlrpc.service.ResourceServiceImpl">
<constructor-arg ref="rBACManager#cached"/>
</bean>
<bean name="redbackUserService" lazy-init="true" scope="singleton"
class="org.codehaus.redback.xmlrpc.service.UserServiceImpl">
<constructor-arg ref="userManager#cached"/>
</bean> </bean>
<bean name="xmlrpcServicesList" lazy-init="true" scope="singleton" class="java.util.ArrayList"> <bean name="xmlrpcServicesList" lazy-init="true" scope="singleton" class="java.util.ArrayList">
@ -86,6 +112,22 @@
<constructor-arg ref="userRepositories"/> <constructor-arg ref="userRepositories"/>
</bean> </bean>
<bean name="redbackXmlrpcServicesList" class="java.util.ArrayList">
<constructor-arg>
<list>
<ref bean="redbackOperationService"/>
<ref bean="redbackPermissionService"/>
<ref bean="redbackResourceService"/>
<ref bean="redbackRoleService"/>
<ref bean="redbackUserService"/>
</list>
</constructor-arg>
</bean>
<bean name="redbackXmlRpcAuthenticator" class="org.codehaus.redback.xmlrpc.security.XmlRpcAuthenticator">
<constructor-arg ref="securitySystem"/>
</bean>
<bean id="mailSession" class="org.springframework.jndi.JndiObjectFactoryBean"> <bean id="mailSession" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/mail/Session"> <property name="jndiName" value="java:comp/env/mail/Session">
</property> </property>

View File

@ -122,6 +122,23 @@
<load-on-startup>1</load-on-startup> <load-on-startup>1</load-on-startup>
</servlet> </servlet>
<servlet>
<servlet-name>RedbackXmlRpcServlet</servlet-name>
<servlet-class>com.atlassian.xmlrpc.spring.BinderSpringXmlRpcServlet</servlet-class>
<init-param>
<param-name>serviceListBeanName</param-name>
<param-value>redbackXmlrpcServicesList</param-value>
</init-param>
<init-param>
<param-name>authHandlerBeanName</param-name>
<param-value>redbackXmlRpcAuthenticator</param-value>
</init-param>
<init-param>
<param-name>enabledForExtensions</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet> <servlet>
<servlet-name>RssFeedServlet</servlet-name> <servlet-name>RssFeedServlet</servlet-name>
<servlet-class> <servlet-class>
@ -144,6 +161,11 @@
<url-pattern>/xmlrpc</url-pattern> <url-pattern>/xmlrpc</url-pattern>
</servlet-mapping> </servlet-mapping>
<servlet-mapping>
<servlet-name>RedbackXmlRpcServlet</servlet-name>
<url-pattern>/redback-xmlrpc</url-pattern>
</servlet-mapping>
<resource-ref> <resource-ref>
<res-ref-name>jdbc/users</res-ref-name> <res-ref-name>jdbc/users</res-ref-name>
<res-type>javax.sql.DataSource</res-type> <res-type>javax.sql.DataSource</res-type>

10
pom.xml
View File

@ -820,6 +820,16 @@
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<dependency>
<groupId>org.codehaus.redback</groupId>
<artifactId>redback-xmlrpc-services</artifactId>
<version>${redback.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.redback</groupId>
<artifactId>redback-xmlrpc-security</artifactId>
<version>${redback.version}</version>
</dependency>
<!-- redback --> <!-- redback -->