summaryrefslogtreecommitdiff
path: root/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationContainerImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationContainerImpl.java')
-rw-r--r--pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationContainerImpl.java420
1 files changed, 420 insertions, 0 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationContainerImpl.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationContainerImpl.java
new file mode 100644
index 00000000..0729cb51
--- /dev/null
+++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationContainerImpl.java
@@ -0,0 +1,420 @@
+/*
+ * Copyright 2012 by A-SIT, Secure Information Technology Center Austria
+ *
+ * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by
+ * the European Commission - subsequent versions of the EUPL (the "Licence");
+ * You may not use this work except in compliance with the Licence.
+ * You may obtain a copy of the Licence at:
+ * http://joinup.ec.europa.eu/software/page/eupl
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the Licence is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the Licence for the specific language governing permissions and
+ * limitations under the Licence.
+ */
+package at.asit.pdfover.gui.workflow.config;
+
+// Imports
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.util.Locale;
+
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.ImageData;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.widgets.Display;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import at.asit.pdfover.gui.Constants;
+import at.asit.pdfover.gui.exceptions.InvalidEmblemFile;
+import at.asit.pdfover.gui.exceptions.InvalidNumberException;
+import at.asit.pdfover.gui.exceptions.InvalidPortException;
+import at.asit.pdfover.gui.utils.Messages;
+import at.asit.pdfover.gui.workflow.states.mobilebku.MobileBKUHelper;
+import at.asit.pdfover.gui.workflow.states.mobilebku.MobileBKUs;
+import at.asit.pdfover.signator.BKUs;
+import at.asit.pdfover.signator.SignaturePosition;
+
+/**
+ *
+ */
+public class ConfigurationContainerImpl implements ConfigurationContainer {
+ /**
+ * SLF4J Logger instance
+ **/
+ @SuppressWarnings("unused")
+ private static final Logger log = LoggerFactory
+ .getLogger(ConfigurationContainerImpl.class);
+
+
+ /** the emblem File */
+ protected String emblemFile = null;
+
+ /** The mobile phone number */
+ protected String mobileNumber = null;
+
+ /** The mobile phone password */
+ protected String mobilePassword = null;
+
+ /** Holds the proxy Host */
+ protected String proxyHost = null;
+
+ /** Holds the signatureNote */
+ protected String signatureNote = null;
+
+ /** Holds the proxy port number */
+ protected int proxyPort = -1;
+
+ /** Holds the locale */
+ protected Locale locale = null;
+
+ /** Holds the signature locale */
+ protected Locale signLocale = null;
+
+ /** Holds the output folder */
+ protected String folder = null;
+
+ /** Holds the default BKU to use */
+ protected BKUs defaultBKU = BKUs.NONE;
+
+ /** Holds the automatic positioning value */
+ protected boolean automaticPositioning = false;
+
+ /** Holds the transparency of the signature placeholder */
+ protected int placeholderTransparency = Constants.DEFAULT_SIGNATURE_PLACEHOLDER_TRANSPARENCY;
+
+ /** Holds the mobile BKU URL */
+ protected String mobileBKUURL = Constants.DEFAULT_MOBILE_BKU_URL;
+
+ /** Holds the mobile BKU type */
+ protected MobileBKUs mobileBKUType = Constants.DEFAULT_MOBILE_BKU_TYPE;
+
+ /** Holds the main window size */
+ protected Point mainWindowSize = null;
+
+ /** Holds the default signature position */
+ protected SignaturePosition defaultSignaturePosition = null;
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getEmblem()
+ */
+ @Override
+ public String getEmblem() {
+ return this.emblemFile;
+ }
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setEmblem(java.lang.String)
+ */
+ @Override
+ public void setEmblem(String emblemFile) throws InvalidEmblemFile {
+ if (emblemFile == null || emblemFile.trim().isEmpty()) {
+ // Ok to set no file ...
+ } else {
+ File imageFile = new File(emblemFile);
+ if (!imageFile.exists()) {
+ throw new InvalidEmblemFile(imageFile,
+ new FileNotFoundException(emblemFile));
+ }
+
+ try {
+ Image img = new Image(Display.getDefault(), new ImageData(
+ emblemFile));
+
+ img.dispose();
+ } catch (Exception ex) {
+ throw new InvalidEmblemFile(imageFile, ex);
+ }
+ }
+
+ this.emblemFile = emblemFile;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getNumber()
+ */
+ @Override
+ public String getMobileNumber() {
+ return this.mobileNumber;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setNumber(java.lang.String)
+ */
+ @Override
+ public void setMobileNumber(String number) throws InvalidNumberException {
+ if(number == null || number.trim().isEmpty()) {
+ this.mobileNumber = null;
+ return;
+ }
+ try {
+ this.mobileNumber = MobileBKUHelper.normalizeMobileNumber(number);
+ } catch (InvalidNumberException e) {
+ throw new InvalidNumberException(Messages.getString("error.InvalidPhoneNumber")); //$NON-NLS-1$
+ }
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getDefaultMobilePassword()
+ */
+ @Override
+ public String getMobilePassword() {
+ return this.mobilePassword;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setDefaultMobilePassword(java.lang.String)
+ */
+ @Override
+ public void setMobilePassword(String password) {
+ this.mobilePassword = password;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getProxyHost()
+ */
+ @Override
+ public String getProxyHost() {
+ return this.proxyHost;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setProxyHost(java.lang.String)
+ */
+ @Override
+ public void setProxyHost(String host) {
+ this.proxyHost = host;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getProxyPort()
+ */
+ @Override
+ public int getProxyPort() {
+ return this.proxyPort;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setProxyPort(int)
+ */
+ @Override
+ public void setProxyPort(int port) throws InvalidPortException {
+ if(port > 0 && port <= 0xFFFF) {
+ this.proxyPort = port;
+ return;
+ }
+ if(port == -1) {
+ this.proxyPort = -1;
+ return;
+ }
+ throw new InvalidPortException(port);
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getAutomaticPosition()
+ */
+ @Override
+ public boolean getAutomaticPosition() {
+ return this.automaticPositioning;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setAutomaticPosition(boolean)
+ */
+ @Override
+ public void setAutomaticPosition(boolean automatic) {
+ this.automaticPositioning = automatic;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getPlaceholderTransparency()
+ */
+ @Override
+ public int getPlaceholderTransparency() {
+ return this.placeholderTransparency;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setPlaceholderTransparency(int)
+ */
+ @Override
+ public void setPlaceholderTransparency(int transparency) {
+ this.placeholderTransparency = transparency;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getBKUSelection()
+ */
+ @Override
+ public BKUs getDefaultBKU() {
+ return this.defaultBKU;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setBKUSelection(at.asit.pdfover.signator.BKUs)
+ */
+ @Override
+ public void setDefaultBKU(BKUs bkuSelection) {
+ this.defaultBKU = bkuSelection;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#getOutputFolder()
+ */
+ @Override
+ public String getOutputFolder() {
+ return this.folder;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.composites.ConfigurationContainer#setOutputFolder(java.lang.String)
+ */
+ @Override
+ public void setOutputFolder(String folder) {
+ this.folder = folder;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getSignatureNote()
+ */
+ @Override
+ public String getSignatureNote() {
+ return this.signatureNote;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setSignatureNote(java.lang.String)
+ */
+ @Override
+ public void setSignatureNote(String note) {
+ this.signatureNote = note;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getLocale()
+ */
+ @Override
+ public Locale getLocale() {
+ return this.locale;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setLocale(java.util.Locale)
+ */
+ @Override
+ public void setLocale(Locale locale) {
+ this.locale = locale;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getSignLocale()
+ */
+ @Override
+ public Locale getSignLocale() {
+ return this.signLocale;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setSignLocale(java.util.Locale)
+ */
+ @Override
+ public void setSignLocale(Locale locale) {
+ this.signLocale = locale;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getMobileBkURL()
+ */
+ @Override
+ public String getMobileBKUURL() {
+ return this.mobileBKUURL;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setMobileBkURL(java.lang.String)
+ */
+ @Override
+ public void setMobileBKUURL(String bkuUrl) {
+ this.mobileBKUURL = bkuUrl;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getMobileBKUType()
+ */
+ @Override
+ public MobileBKUs getMobileBKUType() {
+ return this.mobileBKUType;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setMobileBKUType(at.asit.pdfover.gui.workflow.states.mobilebku.MobileBKUs)
+ */
+ @Override
+ public void setMobileBKUType(MobileBKUs bkuType) {
+ this.mobileBKUType = bkuType;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getSignaturePosition()
+ */
+ @Override
+ public SignaturePosition getDefaultSignaturePosition() {
+ return this.defaultSignaturePosition;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setSignaturePosition(at.asit.pdfover.signator.SignaturePosition)
+ */
+ @Override
+ public void setDefaultSignaturePosition(SignaturePosition signaturePosition) {
+ this.defaultSignaturePosition = signaturePosition;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#getMainWindowSize()
+ */
+ @Override
+ public Point getMainWindowSize() {
+ return this.mainWindowSize;
+ }
+
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.ConfigurationContainer#setMainWindowSize(org.eclipse.swt.graphics.Point)
+ */
+ @Override
+ public void setMainWindowSize(Point size) {
+ this.mainWindowSize = size;
+ }
+}