aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/gv/egiz/pdfas/api/sign
diff options
context:
space:
mode:
authorpdanner <pdanner@7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c>2010-12-06 17:02:56 +0000
committerpdanner <pdanner@7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c>2010-12-06 17:02:56 +0000
commit73c30d3a15a33d02f7ea675e267b39310913ba4d (patch)
treefc72a053d82bb1feb40a3ad79bfcfaee110a9bf4 /src/main/java/at/gv/egiz/pdfas/api/sign
parent96d7b2b6f4fe8d797b2b2f8e14a94c9dcb221c97 (diff)
downloadpdf-as-3-73c30d3a15a33d02f7ea675e267b39310913ba4d.tar.gz
pdf-as-3-73c30d3a15a33d02f7ea675e267b39310913ba4d.tar.bz2
pdf-as-3-73c30d3a15a33d02f7ea675e267b39310913ba4d.zip
Necessary changes for separation of pdf-as-web and rest of the project
git-svn-id: https://joinup.ec.europa.eu/svn/pdf-as/trunk@680 7b5415b0-85f9-ee4d-85bd-d5d0c3b42d1c
Diffstat (limited to 'src/main/java/at/gv/egiz/pdfas/api/sign')
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/SignatureDetailInformation.java127
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/SignaturePositioning.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AbsoluteAxisAlgorithm.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AutoAxisAlgorithm.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AxisAlgorithm.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AbsolutePageAlgorithm.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AutoPageAlgorithm.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/NewPageAlgorithm.java9
-rw-r--r--src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/PageAlgorithm.java9
9 files changed, 191 insertions, 8 deletions
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/SignatureDetailInformation.java b/src/main/java/at/gv/egiz/pdfas/api/sign/SignatureDetailInformation.java
new file mode 100644
index 0000000..0865be1
--- /dev/null
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/SignatureDetailInformation.java
@@ -0,0 +1,127 @@
+/**
+ *
+ */
+package at.gv.egiz.pdfas.api.sign;
+
+import java.security.cert.X509Certificate;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+import at.gv.egiz.pdfas.api.analyze.NonTextObjectInfo;
+import at.gv.egiz.pdfas.api.io.DataSource;
+import at.gv.egiz.pdfas.api.sign.pos.SignaturePosition;
+
+/**
+ * A container for all relevant signature related data.
+ *
+ * @author exthex
+ */
+public interface SignatureDetailInformation
+{
+ public DataSource getSignatureData();
+
+ /**
+ * Returns the position where the signature table was actually placed.
+ *
+ * @return Returns the position where the signature table was actually placed.
+ */
+ public SignaturePosition getSignaturePosition();
+
+ /**
+ * Returns a list<{@link NonTextObjectInfo} of non textual objects in the pdf document.
+ * Only available for textual signatures. Show this to the user who signed the textual content only!
+ * @return List<{@link NonTextObjectInfo} or <tt>null</tt> of not available (binary signature)
+ */
+ public List getNonTextualObjects();
+
+ /**
+ * Returns the date of signature extracted from the signature.
+ * @return
+ */
+ public Date getSignDate();
+
+ /**
+ * Get the name of the issuer.
+ * Short for {@link SignatureDetailInformation#getX509Certificate()#getIssuer()#getName()}
+ *
+ * @return
+ */
+ public String getIssuer();
+
+ /**
+ * Short for {@link SignatureDetailInformation#getX509Certificate()#getIssuerDNMap()}
+ *
+ * @return
+ */
+ public Map getIssuerDNMap();
+
+ /**
+ * Short for {@link SignatureDetailInformation#getX509Certificate()#getSubjectName()#toString()}
+ *
+ * @return
+ */
+ public String getSubjectName();
+
+ /**
+ * Short for {@link SignatureDetailInformation#getX509Certificate()#getSerialNumber()#toString()}
+ *
+ * @return
+ */
+ public String getSerialNumber();
+
+ /**
+ * Get the algorithm the signature was created with.
+ * @return
+ */
+ public String getSigAlgorithm();
+
+ /**
+ *
+ * @return the signature id.
+ */
+ public String getSigID();
+
+ /**
+ *
+ * @return the signature method.
+ */
+ public String getSigKZ();
+
+ /**
+ *
+ * @return the signature value.
+ */
+ public String getSignatureValue();
+
+ /**
+ *
+ * @return the signature time stamp.
+ */
+ public String getSigTimeStamp();
+
+ /**
+ * Short for {@link SignatureDetailInformation#getX509Certificate()#getSubjectDNMap()}
+ *
+ * @return
+ */
+ public Map getSubjectDNMap();
+
+ /**
+ *
+ * @return the certificate used for signature.
+ */
+ public X509Certificate getX509Certificate();
+
+ /**
+ *
+ * @return true if the signature is textual, false otherwise.
+ */
+ public boolean isTextual();
+
+ /**
+ *
+ * @return true if this signature is binary, false otherwise.
+ */
+ public boolean isBinary();
+}
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/SignaturePositioning.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/SignaturePositioning.java
index 42b02eb..1368fcd 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/SignaturePositioning.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/SignaturePositioning.java
@@ -3,6 +3,7 @@
*/
package at.gv.egiz.pdfas.api.sign.pos;
+import java.io.Serializable;
import java.util.StringTokenizer;
import at.gv.egiz.pdfas.api.sign.pos.axis.AbsoluteAxisAlgorithm;
@@ -25,8 +26,14 @@ import at.knowcenter.wag.egov.egiz.exceptions.PDFDocumentException;
*
* @author wprinz
*/
-public class SignaturePositioning
+public class SignaturePositioning implements Serializable
{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
/**
* The x axis algorithm.
*
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AbsoluteAxisAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AbsoluteAxisAlgorithm.java
index 234484c..3e8bc04 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AbsoluteAxisAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AbsoluteAxisAlgorithm.java
@@ -3,14 +3,21 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.axis;
+import java.io.Serializable;
+
/**
* An absolute positioned element.
* @author wprinz
*/
-public class AbsoluteAxisAlgorithm extends AxisAlgorithm
+public class AbsoluteAxisAlgorithm extends AxisAlgorithm implements Serializable
{
/**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
* The absolute positioning value on the axis.
*/
protected float absoluteValue = 0.0f;
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AutoAxisAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AutoAxisAlgorithm.java
index 4c5459f..0d1f80d 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AutoAxisAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AutoAxisAlgorithm.java
@@ -3,12 +3,19 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.axis;
+import java.io.Serializable;
+
/**
* Auto positioning for this element.
*
* @author wprinz
*/
-public class AutoAxisAlgorithm extends AxisAlgorithm
+public class AutoAxisAlgorithm extends AxisAlgorithm implements Serializable
{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
// empty
}
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AxisAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AxisAlgorithm.java
index a4baac6..40f614d 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AxisAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/axis/AxisAlgorithm.java
@@ -3,12 +3,19 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.axis;
+import java.io.Serializable;
+
/**
* Determines how a certain position is chosen on the axis (x, y, width).
*
* @author wprinz
*/
-public abstract class AxisAlgorithm
+public abstract class AxisAlgorithm implements Serializable
{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
// base class
}
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AbsolutePageAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AbsolutePageAlgorithm.java
index 206aa19..5940031 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AbsolutePageAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AbsolutePageAlgorithm.java
@@ -3,14 +3,21 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.page;
+import java.io.Serializable;
+
/**
* The page is selected absolutely by giving the page number directly.
*
* @author wprinz
*/
-public class AbsolutePageAlgorithm extends PageAlgorithm
+public class AbsolutePageAlgorithm extends PageAlgorithm implements Serializable
{
/**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
* The page.
*/
protected int page = -1;
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AutoPageAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AutoPageAlgorithm.java
index 0070d5e..dff678c 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AutoPageAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/AutoPageAlgorithm.java
@@ -3,6 +3,8 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.page;
+import java.io.Serializable;
+
/**
* The page for placing the signature is selected automatically.
*
@@ -14,7 +16,12 @@ package at.gv.egiz.pdfas.api.sign.pos.page;
*
* @author wprinz
*/
-public class AutoPageAlgorithm extends PageAlgorithm
+public class AutoPageAlgorithm extends PageAlgorithm implements Serializable
{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
// empty
}
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/NewPageAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/NewPageAlgorithm.java
index 2a8f67c..050be91 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/NewPageAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/NewPageAlgorithm.java
@@ -3,12 +3,19 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.page;
+import java.io.Serializable;
+
/**
* Places the signature on a new Page.
*
* @author wprinz
*/
-public class NewPageAlgorithm extends PageAlgorithm
+public class NewPageAlgorithm extends PageAlgorithm implements Serializable
{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
// empty block
}
diff --git a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/PageAlgorithm.java b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/PageAlgorithm.java
index 9b0fe8a..14bd02e 100644
--- a/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/PageAlgorithm.java
+++ b/src/main/java/at/gv/egiz/pdfas/api/sign/pos/page/PageAlgorithm.java
@@ -3,12 +3,19 @@
*/
package at.gv.egiz.pdfas.api.sign.pos.page;
+import java.io.Serializable;
+
/**
* Determines how the page on which the signature is to be placed is selected.
*
* @author wprinz
*/
-public abstract class PageAlgorithm
+public abstract class PageAlgorithm implements Serializable
{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
// empty
}