| opendj-sdk/opends/src/messages/messages/quicksetup.properties | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/LicenseFile.java | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Step.java | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/WizardStep.java | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/installer/Installer.java | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/installer/ui/InstallLicensePanel.java | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/ui/ButtonsPanel.java | ●●●●● patch | view | raw | blame | history | |
| opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/upgrader/UpgradeWizardStep.java | ●●●●● patch | view | raw | blame | history |
opendj-sdk/opends/src/messages/messages/quicksetup.properties
@@ -1328,6 +1328,14 @@ href="https://www.opends.org/wiki/page/OverviewOfTheQuickSetupTool"> OpenDS \ documentation wiki</a>. INFO_WELCOME_STEP=Welcome INFO_LICENSE_PANEL_OFFLINE_INSTRUCTIONS=Please read the following important \ information before continuing. INFO_LICENSE_PANEL_TITLE=License INFO_LICENSE_PANEL_WEBSTART_INSTRUCTIONS=bla bla INFO_LICENSE_STEP=License INFO_LICENSE_DETAILS_LABEL=Please read the following License Agreement.\n\ You must accept the terms of the agreement before continuing with the installation. INFO_LICENSE_CLICK_LABEL=Click to accept INFO_CONFIRM_UNINSTALL_STEP=Uninstall Options INFO_ZIP_FILES_DESCRIPTION=OpenDS Installation Package (.zip) SEVERE_ERR_COULD_NOT_FIND_REPLICATIONID=Could not find a remote peer to \ opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/LicenseFile.java
New file @@ -0,0 +1,140 @@ /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at * trunk/opends/resource/legal-notices/OpenDS.LICENSE * or https://OpenDS.dev.java.net/OpenDS.LICENSE. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at * trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable, * add the following below this CDDL HEADER, with the fields enclosed * by brackets "[]" replaced with your own identifying information: * Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END * * * Copyright 2006-2008 Sun Microsystems, Inc. */ package org.opends.quicksetup; import java.io.File; import java.io.FileReader; import java.io.IOException; /** * Represents information about the license file. */ public class LicenseFile { /** * The File object related to the license file. */ static private File licFile = null; /** * The license file approval state. */ static private boolean approved = false; /** * Returns the license file name. */ static private String getName() { String installRootFromSystem = System.getProperty("INSTALL_ROOT"); if (installRootFromSystem == null) { installRootFromSystem = System.getenv("INSTALL_ROOT"); } if (installRootFromSystem == null) { installRootFromSystem = ""; } return installRootFromSystem + "/Legal/license_to_accept.txt"; } /** * Returns the license file object. */ static private File getFile() { if (licFile == null) { licFile = new File(getName()); } return licFile; } /** * Checks if the license file exists. * @return <CODE>true</CODE> a license file license_to_accept.txt * exists in the Legal directory in the top level installation directory * <CODE>false</CODE> otherwise. */ static public boolean exists() { return getFile().exists(); } /** * Get the textual contents of the license file. * @return the textual contents of the license file. */ static public String getText() { FileReader reader; try { reader = new FileReader(getFile()); } catch(Exception e) { return ""; } int fileLen = (int) getFile().length(); char[] charArray = new char[fileLen]; try { reader.read(charArray); } catch(IOException ioe) { System.out.println("Could not read license file"); } return new String(charArray); } /** * Get the license approval status. * @return <CODE>true</CODE> if the license has been accepted by the user * <CODE>false</CODE> otherwise. */ static public boolean getApproval() { return approved; } /** * Sets the license approval status. * @param p_approved the license approval status */ static public void setApproval(boolean p_approved) { approved = p_approved; } } opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/Step.java
@@ -44,6 +44,11 @@ WELCOME(INFO_WELCOME_STEP.get()), /** * License approval step for the installation. */ LICENSE(INFO_LICENSE_STEP.get()), /** * Confirmation panel for the uninstallation. */ CONFIRM_UNINSTALL(INFO_CONFIRM_UNINSTALL_STEP.get()), @@ -124,4 +129,11 @@ return this == FINISHED; } /** * {@inheritDoc} */ public boolean isLicenseStep() { return this == LICENSE; } } opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/WizardStep.java
@@ -56,4 +56,11 @@ */ boolean isFinishedStep(); /** * Indicates whether this is the license approval step. * @return <CODE>true</CODE> if this is the license approval step * and <CODE>false</CODE> otherwise. */ boolean isLicenseStep(); } opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/installer/Installer.java
@@ -63,6 +63,7 @@ import org.opends.quicksetup.ButtonName; import org.opends.quicksetup.Constants; import org.opends.quicksetup.Installation; import org.opends.quicksetup.LicenseFile; import org.opends.quicksetup.ProgressStep; import org.opends.quicksetup.QuickSetupLog; import org.opends.quicksetup.ReturnCode; @@ -87,6 +88,7 @@ import org.opends.quicksetup.installer.ui.GlobalAdministratorPanel; import org.opends.quicksetup.installer.ui.InstallReviewPanel; import org.opends.quicksetup.installer.ui.InstallWelcomePanel; import org.opends.quicksetup.installer.ui.InstallLicensePanel; import org.opends.quicksetup.installer.ui.RemoteReplicationPortsPanel; import org.opends.quicksetup.installer.ui.ServerSettingsPanel; import org.opends.quicksetup.installer.ui.SuffixesToReplicatePanel; @@ -192,6 +194,9 @@ */ public Installer() { lstSteps.add(WELCOME); if (LicenseFile.exists()) { lstSteps.add(LICENSE); } lstSteps.add(SERVER_SETTINGS); lstSteps.add(REPLICATION_OPTIONS); lstSteps.add(CREATE_GLOBAL_ADMINISTRATOR); @@ -511,6 +516,8 @@ QuickSetupStepPanel p = null; if (step == WELCOME) { p = new InstallWelcomePanel(this); } else if (step == LICENSE) { p = new InstallLicensePanel(this); } else if (step == SERVER_SETTINGS) { p = new ServerSettingsPanel(this); } else if (step == REPLICATION_OPTIONS) { @@ -716,6 +723,9 @@ { LinkedHashSet<WizardStep> orderedSteps = new LinkedHashSet<WizardStep>(); orderedSteps.add(WELCOME); if (lstSteps.contains(LICENSE)) { orderedSteps.add(LICENSE); } orderedSteps.add(SERVER_SETTINGS); orderedSteps.add(REPLICATION_OPTIONS); orderedSteps.add(CREATE_GLOBAL_ADMINISTRATOR); opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/installer/ui/InstallLicensePanel.java
New file @@ -0,0 +1,170 @@ /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at * trunk/opends/resource/legal-notices/OpenDS.LICENSE * or https://OpenDS.dev.java.net/OpenDS.LICENSE. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at * trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable, * add the following below this CDDL HEADER, with the fields enclosed * by brackets "[]" replaced with your own identifying information: * Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END * * * Copyright 2006-2008 Sun Microsystems, Inc. */ package org.opends.quicksetup.installer.ui; import org.opends.messages.Message; import static org.opends.messages.QuickSetupMessages.*; import java.awt.Component; import java.awt.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.*; import org.opends.quicksetup.ui.GuiApplication; import org.opends.quicksetup.ui.QuickSetupStepPanel; import org.opends.quicksetup.ui.UIFactory; import org.opends.quicksetup.util.Utils; import org.opends.quicksetup.Installation; import org.opends.quicksetup.LicenseFile; import org.opends.quicksetup.ButtonName; /** * This panel is used to show a welcome message. * */ public class InstallLicensePanel extends QuickSetupStepPanel { private static final long serialVersionUID = 6209217138897900860L; /** * Default constructor. * @param app Application this panel represents */ public InstallLicensePanel(GuiApplication app) { super(app); } /** * {@inheritDoc} */ protected Message getTitle() { return INFO_LICENSE_PANEL_TITLE.get(); } /** * {@inheritDoc} */ protected Message getInstructions() { /* * We can use org.opends.server.util.DynamicConstants without problems as it * has been added to quicksetup.jar during build time. */ Message message; if (Utils.isWebStart()) { String cmd = Utils.isWindows()? Installation.WINDOWS_SETUP_FILE_NAME: Installation.UNIX_SETUP_FILE_NAME; message = INFO_LICENSE_PANEL_WEBSTART_INSTRUCTIONS.get(); } else { message = INFO_LICENSE_PANEL_OFFLINE_INSTRUCTIONS.get(); } return message; } private TextArea detailsTextArea; private JCheckBox acceptCheck; /** * {@inheritDoc} */ protected Component createInputPanel() { // No input in this panel JPanel panel = new JPanel(new GridBagLayout()); panel.setOpaque(false); GridBagConstraints gbc = new GridBagConstraints(); gbc.insets = UIFactory.getEmptyInsets(); gbc.anchor = GridBagConstraints.NORTHWEST; gbc.gridwidth = GridBagConstraints.REMAINDER; gbc.weightx = 1.0; gbc.fill = GridBagConstraints.HORIZONTAL; JLabel l = UIFactory.makeJLabel(UIFactory.IconType.NO_ICON, INFO_LICENSE_DETAILS_LABEL.get(), UIFactory.TextStyle.SECONDARY_FIELD_VALID); gbc.insets = UIFactory.getEmptyInsets(); panel.add(l, gbc); detailsTextArea = new TextArea(); detailsTextArea.setBackground( UIFactory.CURRENT_STEP_PANEL_BACKGROUND); detailsTextArea.setText(LicenseFile.getText()); gbc.insets = UIFactory.getEmptyInsets(); gbc.fill = GridBagConstraints.BOTH; gbc.weighty = 1.0; panel.add(detailsTextArea, gbc); acceptCheck = UIFactory.makeJCheckBox(INFO_LICENSE_CLICK_LABEL.get(), null, UIFactory.TextStyle.SECONDARY_FIELD_VALID); acceptCheck.setOpaque(false); acceptCheck.setSelected(false); gbc.insets = UIFactory.getEmptyInsets(); gbc.fill = GridBagConstraints.BOTH; gbc.weighty = 0.0; panel.add(acceptCheck, gbc); addActionListeners(); return panel; } /** * Adds the required action listeners to the fields. */ private void addActionListeners() { final ActionListener l = new ActionListener() { public void actionPerformed(ActionEvent e) { // Enable or disable Next button as user clicks approval button getQuickSetup().getDialog().setButtonEnabled( ButtonName.NEXT, acceptCheck.isSelected()); // Save approval status for navigation LicenseFile.setApproval(acceptCheck.isSelected()); } }; acceptCheck.addActionListener(l); } } opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/ui/ButtonsPanel.java
@@ -32,6 +32,7 @@ import org.opends.quicksetup.ButtonName; import org.opends.quicksetup.WizardStep; import org.opends.quicksetup.LicenseFile; import org.opends.quicksetup.event.ButtonActionListener; import org.opends.quicksetup.event.ButtonEvent; @@ -121,6 +122,11 @@ // is only enabled once progress has finished or cancelled. closeButton.setVisible(step.isProgressStep() || step.isFinishedStep()); closeButton.setEnabled(application.getCurrentProgressStep().isLast()); // The next button is always enabled in all steps except the license step. // In that step, the next button will be enabled only if the user has // approved the license nextButton.setEnabled(!step.isLicenseStep() || LicenseFile.getApproval()); } /** opendj-sdk/opends/src/quicksetup/org/opends/quicksetup/upgrader/UpgradeWizardStep.java
@@ -82,6 +82,14 @@ } /** * {@inheritDoc} */ public boolean isLicenseStep() { // Irrelevant here return false; } /** * Returns an String representation of this object. * @return an String representation of this object. This method is * overwritten in order to be able to use this objects as keys in Maps and