81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganpackage com.sun.identity.console.task;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.iplanet.jato.view.View;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.iplanet.jato.view.event.DisplayEvent;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.base.AMPrimaryMastHeadViewBean;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.base.AMPropertySheet;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.base.model.AMConsoleException;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.base.model.AMModel;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.base.model.AMPropertySheetModel;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.task.model.TaskModel;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.identity.console.task.model.TaskModelImpl;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.web.ui.model.CCPageTitleModel;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.web.ui.view.alert.CCAlert;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.web.ui.view.html.CCDropDownMenu;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport com.sun.web.ui.view.pagetitle.CCPageTitle;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport javax.servlet.http.HttpServletRequest;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganimport java.util.Set;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan/**
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan * ViewBean associated with the CommonTask of creating a soap-sts deployment .war.
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan */
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hoganpublic class CreateSoapSTSDeploymentViewBean extends AMPrimaryMastHeadViewBean {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan public static final String DEFAULT_DISPLAY_URL =
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan "/console/task/CreateSoapSTSDeployment.jsp";
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private static final String PAGETITLE = "pgtitle";
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private static final String PROPERTY_ATTRIBUTE = "propertyAttributes";
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private static final String REALM = "tfRealm";
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private CCPageTitleModel ptModel;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private AMPropertySheetModel propertySheetModel;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan public CreateSoapSTSDeploymentViewBean() {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan super("CreateSoapSTSDeployment");
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan setDefaultDisplayURL(DEFAULT_DISPLAY_URL);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan createPageTitleModel();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan createPropertyModel();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan registerChildren();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan protected void registerChildren() {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan ptModel.registerChildren(this);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan propertySheetModel.registerChildren(this);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan registerChild(PAGETITLE, CCPageTitle.class);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan super.registerChildren();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan protected View createChild(String name) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan View view;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan if (name.equals(PAGETITLE)) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan view = new CCPageTitle(this, ptModel, name);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan } else if (ptModel.isChildSupported(name)) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan view = ptModel.createChild(this, name);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan } else if (name.equals(PROPERTY_ATTRIBUTE)) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan view = new AMPropertySheet(this, propertySheetModel, name);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan } else if (propertySheetModel.isChildSupported(name)) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan view = propertySheetModel.createChild(this, name, getModel());
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan } else {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan view = super.createChild(name);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan return view;
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private void createPageTitleModel() {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan ptModel = new CCPageTitleModel(
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan getClass().getClassLoader().getResourceAsStream(
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan "com/sun/identity/console/twoBtnsPageTitle.xml"));
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan ptModel.setValue("button1", "button.create");
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan ptModel.setValue("button2", "button.cancel");
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan private void createPropertyModel() {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan propertySheetModel = new AMPropertySheetModel(
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan getClass().getClassLoader().getResourceAsStream(
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan "com/sun/identity/console/propertyCreateSoapSTSDeployment.xml"));
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan propertySheetModel.clear();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan protected AMModel getModelInternal() {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan HttpServletRequest req = getRequestContext().getRequest();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan return new TaskModelImpl(req, getPageSessionAttributes());
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan public void beginDisplay(DisplayEvent e) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan try {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan TaskModel model = (TaskModel) getModel();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan Set realms = model.getRealms();
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan CCDropDownMenu menuRealm = (CCDropDownMenu) getChild(REALM);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan menuRealm.setOptions(createOptionList(realms));
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan String realm = getRequestContext().getRequest().getParameter("realm");
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan if (realm != null && !realm.trim().isEmpty()) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan setDisplayFieldValue(REALM, realm);
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan } catch (AMConsoleException ex) {
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan setInlineAlertMessage(CCAlert.TYPE_ERROR, "message.error",
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan ex.getMessage());
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan }
81ec9608aca5c5fb618d1c92ff435c2ad36f4770Dirk Hogan}