package org.safehaus.penrose.studio.federation.nis.wizard; import org.eclipse.jface.wizard.Wizard; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.safehaus.penrose.federation.NISDomain; import org.safehaus.penrose.federation.FederationRepositoryConfig; import org.safehaus.penrose.studio.dialog.ErrorDialog; import org.safehaus.penrose.studio.federation.linking.wizard.LinkingParametersWizardPage; /** * @author Endi Sukma Dewata */ public class EditNISDomainWizard extends Wizard { public Logger log = LoggerFactory.getLogger(getClass()); NISDomainWizardPage connectionPage; //NISPartitionsWizardPage partitionsPage; //LinkingParametersWizardPage linkingPage; FederationRepositoryConfig repository; public EditNISDomainWizard(FederationRepositoryConfig domain) { this.repository = domain; setWindowTitle("Edit NIS Domain"); } public void addPages() { connectionPage = new NISDomainWizardPage(); connectionPage.setServer(repository.getParameter(NISDomain.SERVER)); connectionPage.setDomain(repository.getParameter(NISDomain.DOMAIN)); addPage(connectionPage); /* partitionsPage = new NISPartitionsWizardPage(); partitionsPage.setYpSuffix(repository.getParameter(NISDomain.YP_SUFFIX)); partitionsPage.setYpTemplate(repository.getParameter(NISDomain.YP_TEMPLATE)); partitionsPage.setNisSuffix(repository.getParameter(NISDomain.NIS_SUFFIX)); partitionsPage.setNisTemplate(repository.getParameter(NISDomain.NIS_TEMPLATE)); partitionsPage.setNssSuffix(repository.getParameter(NISDomain.NSS_SUFFIX)); partitionsPage.setNssTemplate(repository.getParameter(NISDomain.NSS_TEMPLATE)); addPage(partitionsPage); linkingPage = new LinkingParametersWizardPage(); linkingPage.setLocalAttribute(repository.getParameter(FederationRepositoryConfig.LINKING_LOCAL_ATTRIBUTE)); linkingPage.setGlobalAttribute(repository.getParameter(FederationRepositoryConfig.LINKING_GLOBAL_ATTRIBUTE)); linkingPage.setImportMappingName(repository.getParameter(FederationRepositoryConfig.IMPORT_MAPPING_NAME)); linkingPage.setImportMappingPrefix(repository.getParameter(FederationRepositoryConfig.IMPORT_MAPPING_PREFIX)); addPage(linkingPage); */ } public boolean canFinish() { if (!connectionPage.isPageComplete()) return false; //if (!partitionsPage.isPageComplete()) return false; //if (!linkingPage.isPageComplete()) return false; return true; } public boolean performFinish() { try { repository.setParameter(NISDomain.SERVER, connectionPage.getServer()); repository.setParameter(NISDomain.DOMAIN, connectionPage.getDomain()); /* repository.setParameter(NISDomain.YP_SUFFIX, partitionsPage.getYpSuffix()); repository.setParameter(NISDomain.YP_TEMPLATE, partitionsPage.getYpTemplate()); repository.setParameter(NISDomain.NIS_SUFFIX, partitionsPage.getNisSuffix()); repository.setParameter(NISDomain.NIS_TEMPLATE, partitionsPage.getNisTemplate()); repository.setParameter(NISDomain.NSS_SUFFIX, partitionsPage.getNssSuffix()); repository.setParameter(NISDomain.NSS_TEMPLATE, partitionsPage.getNssTemplate()); repository.setParameter(FederationRepositoryConfig.LINKING_LOCAL_ATTRIBUTE, linkingPage.getLocalAttribute()); repository.setParameter(FederationRepositoryConfig.LINKING_GLOBAL_ATTRIBUTE, linkingPage.getGlobalAttribute()); repository.setParameter(FederationRepositoryConfig.IMPORT_MAPPING_NAME, linkingPage.getImportMappingName()); repository.setParameter(FederationRepositoryConfig.IMPORT_MAPPING_PREFIX, linkingPage.getImportMappingPrefix()); */ return true; } catch (Exception e) { log.error(e.getMessage(), e); ErrorDialog.open(e); return false; } } public boolean needsPreviousAndNextButtons() { return true; } }