Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

  1. Create UCDUserServiceOverrideResourceLoader Class
  2. Resulting Skeleton Code Add Constructor and Attributes
    Code Block
    titleIdentityManagementOverrideResourceLoaderUCDUserServiceOverrideResourceLoader.java
    package edu.ucdavis.iet.mw.kuali.rice;
    
    import org.kuali.rice.resourceloader.BaseResourceLoader;
    
    public class IdentityManagementOverrideResourceLoader extends BaseResourceLoader {
    
    }
    
    Add Constructor and Attributes
    Code Block
    titleIdentityManagementOverrideResourceLoader.java
    
    package edu.ucdavis.iet.mw.kuali.rice;
    
    import javax.xml.namespace.QName;
    import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;
    import org.kuali.rice.resourceloader.BaseResourceLoader;
    
    public class IdentityManagementOverrideResourceLoaderUCDUserServiceOverrideResourceLoader extends BaseResourceLoader {
    
    	public IdentityManagementOverrideResourceLoaderUCDUserServiceOverrideResourceLoader(){
    		super(new QName("IdentityManagementOverrideResourceLoader"));
    	}
    	
    	private static final String SPRING_FILE = "classpath:SpringBeans.xml";
    	
    	private ClassPathXmlApplicationContext context;
    	
    }
    
  3. Override start(), stop() and getService(QName) Methods Image RemovedImplement Methods
    Code Block
    titleIdentityManagementOverrideResourceLoaderUCDUserServiceOverrideResourceLoader.java
    package edu.ucdavis.iet.mw.kuali.rice;
    
    import org.kuali.rice.resourceloader.BaseResourceLoader;
    import javax.xml.namespace.QName;
    import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;
    import org.kuali.rice.resourceloader.BaseResourceLoader;
    import edu.iu.uis.eden.KEWServiceLocator;
    
    public class IdentityManagementOverrideResourceLoaderUCDUserServiceOverrideResourceLoader extends BaseResourceLoader {
    
    	public IdentityManagementOverrideResourceLoaderUCDUserServiceOverrideResourceLoader(){
    		super(new QName("IdentityManagementOverrideResourceLoader"));
    	}
    	
    	private static final String SPRING_FILE = "classpath:SpringBeans.xml";
    	
    	private ClassPathXmlApplicationContext context;
    	
    	public Object getService(QName serviceName) {
    		String springServiceName = serviceName.getLocalPart();
    		if (KEWServiceLocator.USER_SERVICE.equals(springServiceName)) {
    			return context.getBean(springServiceName);
    		}
    		return super.getService(serviceName);
    	}
    
    	public void start() throws Exception {
    		context = new ClassPathXmlApplicationContext(SPRING_FILE);
    		super.start();
    	}
    
    	public void stop() throws Exception {
    		if (context != null) {
    			context.stop();
    			context = null;
    		}
    		super.stop();
    	}
    	
    }
    

Implement User Service

  1. Create LDAPIdentityManagementService UCDUserService Class:
    Image Removed Image Added
  2. Implement ??? Methods
    Code Block
    titleLDAPIdentityManagementServiceUCDUserService.java
    package edu.ucdavis.iet.mw.kuali.rice;
    
    import java.io.InputStream;
    import java.util.List;
    
    import edu.iu.uis.eden.clientapp.vo.UserIdVO;
    import edu.iu.uis.eden.exception.EdenUserNotFoundException;
    import edu.iu.uis.eden.user.UserCapabilities;
    import edu.iu.uis.eden.user.UserId;
    import edu.iu.uis.eden.user.UserService;
    import edu.iu.uis.eden.user.WorkflowUser;
    
    public class LDAPIdentityManagementServiceUCDUserService implements UserService {
    
    	public WorkflowUser copy(WorkflowUser arg0, boolean arg1) {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    	public WorkflowUser getBlankUser() {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    	public UserCapabilities getCapabilities() {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    	public WorkflowUser getWorkflowUser(UserId arg0)
    			throws EdenUserNotFoundException {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    	public WorkflowUser getWorkflowUser(UserIdVO arg0)
    			throws EdenUserNotFoundException {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    	public void save(WorkflowUser arg0) {
    		// TODO Auto-generated method stub
    
    	}
    
    	public List search(WorkflowUser arg0, boolean arg1) {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    	public void loadXml(InputStream arg0, WorkflowUser arg1) {
    		// TODO Auto-generated method stub
    
    	}
    
    }
    
  3. Declare LDAPIdentityManagementService UCDUserService in Spring Context
    • Under /src/main/resources create a file named SpringBeans.xml
    • Edit SpringBeans.xml:
      Code Block
      titleSpringBeans.xml
      
      <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
      <beans>
      	<bean id="enUserService" class="edu.ucdavis.iet.mw.kuali.rice.LDAPIdentityManagementServiceUCDUserService"/>
      </beans>
      

Reference

https://test.kuali.org/confluence/display/KULRICE/Workflow+Plugin+Guide
https://test.kuali.org/confluence/display/KULRICE/JA-SIG+Spring+2008+-+Building+the+Plug-in