diff options
Diffstat (limited to 'pdf-as-lib')
6 files changed, 54 insertions, 58 deletions
| diff --git a/pdf-as-lib/src/configuration/cfg/advancedconfig.properties b/pdf-as-lib/src/configuration/cfg/advancedconfig.properties index 726deba8..858b652f 100644 --- a/pdf-as-lib/src/configuration/cfg/advancedconfig.properties +++ b/pdf-as-lib/src/configuration/cfg/advancedconfig.properties @@ -110,3 +110,4 @@ default.verifier.01=at.gv.egiz.pdfas.sigs.pades.PAdESVerifier  # Protect PDF files from copying and extractiong content
  # Set values to be true|false|unchanged
 +default.protectPDF = true
 diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/IConfigurationConstants.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/IConfigurationConstants.java index 713948ba..3c560142 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/IConfigurationConstants.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/api/IConfigurationConstants.java @@ -54,7 +54,7 @@ public interface IConfigurationConstants {  	public static final String CONFIG_BKU_URL = "bku.sign.url";  	/*Protect PDF content*/ -	public static final String DEFAULT_CONFIG_PROTECT_PDF=DEFAULT+SEPERATOR+"protectPDF"; +	public static final String DEFAULT_CONFIG_PROTECT_PDF = DEFAULT+SEPERATOR+"protectPDF";  	/**  	 * MOA SS Signing Key Identifier @@ -114,12 +114,4 @@ public interface IConfigurationConstants {  	public static final String SIG_PADES_FORCE_FLAG= SIG_OBJECT + SEPERATOR+"PAdESCompatibility";  	public static final String SIG_PADES_INTELL_FLAG = SIG_OBJECT + SEPERATOR+"CheckPAdESCompatibility"; - -	/** -	 * Protect PDF file from copying content and extracting -	 */ - -	public static final String DEFAULT_CONFIG_PROTECT_COPY_PDF = DEFAULT_CONFIG_PROTECT_PDF + SEPERATOR + "accessCopy"; -	public static final String DEFAULT_CONFIG_PROTECT_EXTRACT_PDF = DEFAULT_CONFIG_PROTECT_PDF + SEPERATOR + "canModify"; -  } diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/configuration/GlobalConfiguration.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/configuration/GlobalConfiguration.java index a40c336d..a677676d 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/configuration/GlobalConfiguration.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/configuration/GlobalConfiguration.java @@ -41,26 +41,4 @@ public class GlobalConfiguration extends SpecificBaseConfiguration  		return null;  	} -	public String getDefaultProtection() { -		if(this.configuration.hasValue(DEFAULT_CONFIG_PROTECT_PDF)) { -			return this.configuration.getValue(DEFAULT_CONFIG_PROTECT_PDF); -		} -		return null; -	} - -	public String getDefaultCopyProtection() { -		if(this.configuration.hasValue(DEFAULT_CONFIG_PROTECT_COPY_PDF)) { -			return this.configuration.getValue(DEFAULT_CONFIG_PROTECT_COPY_PDF); -		} -		return null; -	} - -	public String getDefaultExtractProtection() { -		if(this.configuration.hasValue(DEFAULT_CONFIG_PROTECT_EXTRACT_PDF)) { -			return this.configuration.getValue(DEFAULT_CONFIG_PROTECT_EXTRACT_PDF); -		} -		return null; -	} - -  } diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/placeholder/PlaceholderFilter.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/placeholder/PlaceholderFilter.java index 9906fd6a..4b1a5a49 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/placeholder/PlaceholderFilter.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/placeholder/PlaceholderFilter.java @@ -44,6 +44,7 @@ public class PlaceholderFilter implements IConfigurationConstants,  					.getPlaceholderExtractor();  			String placeholderID = settings.getValue(PLACEHOLDER_ID);  			String placeholderModeString = settings.getValue(PLACEHOLDER_MODE); +  			int placeholderMode = PLACEHOLDER_MATCH_MODE_MODERATE;  			if (placeholderModeString != null) {  				try { diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java index 8e84b491..8b9991fd 100644 --- a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java @@ -3,19 +3,19 @@   * PDF-AS has been contracted by the E-Government Innovation Center EGIZ, a   * joint initiative of the Federal Chancellery Austria and Graz University of   * Technology. - *  + *   * 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://www.osor.eu/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. - *  + *   * This product combines work with different licenses. See the "NOTICE" text   * file for details on the various modules and licenses.   * The "NOTICE" text file is part of the distribution. Any derivative works @@ -40,20 +40,15 @@ import org.slf4j.Logger;  import org.slf4j.LoggerFactory;  public class SLMarschaller { -	private static Marshaller marshaller = null; -	private static Unmarshaller unmarshaller = null; + +	private static JAXBContext context = null;  	private static final Logger logger = LoggerFactory  			.getLogger(SLMarschaller.class); -	 +  	static {  		try { -			JAXBContext context = JAXBContext.newInstance("at.gv.egiz.sl.schema"); -			marshaller = context.createMarshaller(); -			marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); -			marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8"); - -			unmarshaller = context.createUnmarshaller(); +			context = JAXBContext.newInstance("at.gv.egiz.sl.schema");  		} catch (JAXBException e) {  			logger.error("Error in creating JAXBContext", e);  			throw new RuntimeException( @@ -61,17 +56,19 @@ public class SLMarschaller {  		}  	} -	public static void marshal(Object obj, OutputStream os) throws JAXBException { +	public static synchronized void marshal(Object obj, OutputStream os) throws JAXBException { +		Marshaller marshaller = createMarshaller();  		marshaller.marshal(obj, os);  	} -	public static String marshalToString(Object obj) throws JAXBException { +	public static synchronized String marshalToString(Object obj) throws JAXBException { +		Marshaller marshaller = createMarshaller();  		StringWriter sw = new StringWriter();  		marshaller.marshal(obj, sw);  		return sw.toString();  	} -	 -	public static Object unmarshal(InputStream is) throws JAXBException { + +	public static synchronized Object unmarshal(InputStream is) throws JAXBException {  		XMLInputFactory xif = null;  		try {  			xif = XMLInputFactory.newFactory(); @@ -79,19 +76,20 @@ public class SLMarschaller {  			// Fallback for old STAX implementations  			xif = XMLInputFactory.newInstance();  		} -        xif.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false); -        xif.setProperty(XMLInputFactory.SUPPORT_DTD, false); -        XMLStreamReader xmlStreamReader; +		xif.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false); +		xif.setProperty(XMLInputFactory.SUPPORT_DTD, false); +		XMLStreamReader xmlStreamReader;  		try {  			xmlStreamReader = xif.createXMLStreamReader(is); +			Unmarshaller unmarshaller = createUnmarshaller();  			return unmarshaller.unmarshal(xmlStreamReader);  		} catch (XMLStreamException e) {  			throw new JAXBException(e);  		} -		 +  	} -	 -	public static Object unmarshalFromString(String message) throws JAXBException { + +	public static synchronized Object unmarshalFromString(String message) throws JAXBException {  		StringReader sr = new StringReader(message);  		XMLInputFactory xif = null;  		try { @@ -100,15 +98,41 @@ public class SLMarschaller {  			// Fallback for old STAX implementations  			xif = XMLInputFactory.newInstance();  		} -		 -        xif.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false); -        xif.setProperty(XMLInputFactory.SUPPORT_DTD, false); -        XMLStreamReader xmlStreamReader; + +		xif.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, false); +		xif.setProperty(XMLInputFactory.SUPPORT_DTD, false); +		XMLStreamReader xmlStreamReader;  		try {  			xmlStreamReader = xif.createXMLStreamReader(sr); +			Unmarshaller unmarshaller = createUnmarshaller();  			return unmarshaller.unmarshal(xmlStreamReader);  		} catch (XMLStreamException e) {  			throw new JAXBException(e);  		}  	} -} + +	private static synchronized Marshaller createMarshaller() { +		try { +			Marshaller marshaller = context.createMarshaller(); +			marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); +			marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8"); +			return marshaller; +		} +		catch (JAXBException e) { +			logger.error("Error in creating Marshaller", e); +			throw new RuntimeException( +					"There was a problem creating a Marshaller object for formatting the object to XML."); +		} +	} + +	private static synchronized Unmarshaller createUnmarshaller() { +		try { +			return context.createUnmarshaller(); +		} +		catch (JAXBException e) { +			logger.error("Error in creating Unmarshaller", e); +			throw new RuntimeException( +					"There was a problem creating a Unmarshaller object for formatting the object to XML."); +		} +	} +}
\ No newline at end of file diff --git a/pdf-as-lib/src/main/resources/config/config.zip b/pdf-as-lib/src/main/resources/config/config.zipBinary files differ index 57e7df54..9544e91f 100644 --- a/pdf-as-lib/src/main/resources/config/config.zip +++ b/pdf-as-lib/src/main/resources/config/config.zip | 
