1 19 20 package com.sslexplorer.properties.wizards.forms; 21 22 import java.util.ArrayList ; 23 import java.util.List ; 24 25 import javax.servlet.http.HttpServletRequest ; 26 27 import org.apache.commons.logging.Log; 28 import org.apache.commons.logging.LogFactory; 29 30 import com.sslexplorer.core.CoreServlet; 31 import com.sslexplorer.core.forms.AbstractResourceDetailsWizardForm; 32 import com.sslexplorer.policyframework.PolicyConstants; 33 import com.sslexplorer.policyframework.ResourceUtil; 34 import com.sslexplorer.properties.ProfilesFactory; 35 import com.sslexplorer.properties.wizards.actions.ProfileDetailsAction; 36 import com.sslexplorer.security.Constants; 37 import com.sslexplorer.security.LogonControllerFactory; 38 import com.sslexplorer.security.User; 39 import com.sslexplorer.wizard.AbstractWizardSequence; 40 41 public class ProfileDetailsForm extends AbstractResourceDetailsWizardForm { 42 private List availableProfiles; 43 private int baseOn; 44 45 final static Log log = LogFactory.getLog(ProfileDetailsForm.class); 46 47 public final static String ATTR_BASE_ON = "baseOn"; 49 50 public ProfileDetailsForm() { 51 super(true, false, "/WEB-INF/jsp/content/properties/profileWizard/profileDetails.jspf", "resourceName", true, false, 52 "profileDetails", "properties", "profileWizard.profileDetails", 1, PolicyConstants.PROFILE_RESOURCE_TYPE); 53 availableProfiles = new ArrayList (); 54 } 55 56 61 public void init(AbstractWizardSequence sequence, HttpServletRequest request) throws Exception { 62 super.init(sequence, request); 63 baseOn = ((Integer ) sequence.getAttribute(ATTR_BASE_ON, new Integer (0))).intValue(); 64 availableProfiles.clear(); 65 try { 66 String scope = (String ) sequence.getAttribute(ProfileDetailsAction.ATTR_PROFILE_SCOPE, null); 67 User user = LogonControllerFactory.getInstance().getUser(request); 68 availableProfiles = ResourceUtil.filterResources(user, ProfilesFactory.getInstance() 69 .getPropertyProfiles(Constants.SCOPE_PERSONAL.equals(scope) ? user.getPrincipalName() : "", true, 70 user.getRealm().getResourceId()), Constants.SCOPE_PERSONAL.equals(scope) ? false : true); 71 } catch (Exception e) { 72 log.error("Could not get available profiles.", e); 73 } 74 } 75 76 79 public int getBaseOn() { 80 return baseOn; 81 } 82 83 86 public void setBaseOn(int baseOn) { 87 this.baseOn = baseOn; 88 } 89 90 93 public List getAvailableProfiles() { 94 return availableProfiles; 95 } 96 97 102 public void apply(AbstractWizardSequence sequence) throws Exception { 103 super.apply(sequence); 104 sequence.putAttribute(ATTR_BASE_ON, new Integer (baseOn)); 105 } 106 } 107 108 | Popular Tags |