package es.uji.security.crypto.pdf;
import es.uji.security.crypto.SignatureOptions;
import es.uji.security.crypto.config.ConfigManager;
public class ConfigurationAdapter
{
private SignatureOptions signatureOptions;
private ConfigManager conf = ConfigManager.getInstance();
public ConfigurationAdapter(SignatureOptions signatureOptions)
{
this.signatureOptions = signatureOptions;
}
public String getReason()
{
if (signatureOptions.getReason() != null && signatureOptions.getReason().length() > 0)
{
return signatureOptions.getReason();
}
else
{
return conf.getProperty("PDFSIG_REASON", "CryptoApplet digital signatures");
}
}
public String getLocation()
{
if (signatureOptions.getLocation() != null && signatureOptions.getLocation().length() > 0)
{
return signatureOptions.getLocation();
}
else
{
return conf.getProperty("PDFSIG_LOCATION", "Spain");
}
}
public String getContact()
{
if (signatureOptions.getContact() != null && signatureOptions.getContact().length() > 0)
{
return signatureOptions.getContact();
}
else
{
return conf.getProperty("PDFSIG_CONTACT", "Universitat Jaume I");
}
}
public boolean isTimestamping()
{
if (signatureOptions.isTimestamping() != null)
{
return signatureOptions.isTimestamping();
}
else
{
String config = conf.getProperty("PDFSIG_TIMESTAMPING", "true");
return (config.equals("true"));
}
}
public String getTsaURL()
{
if (signatureOptions.getTsaURL() != null && signatureOptions.getTsaURL().length() > 0)
{
return signatureOptions.getTsaURL();
}
else
{
return conf.getProperty("PDFSIG_TSA_URL", "http://tss.accv.es:8318/tsa");
}
}
public boolean isVisibleSignature()
{
if (signatureOptions.isVisibleSignature() != null)
{
return signatureOptions.isVisibleSignature();
}
else
{
String config = conf.getProperty("PDFSIG_VISIBLE_SIGNATURE", "true");
return (config.equals("true"));
}
}
public String getVisibleSignatureType()
{
if (signatureOptions.getVisibleSignatureType() != null
&& signatureOptions.getVisibleSignatureType().length() > 0)
{
return signatureOptions.getVisibleSignatureType();
}
else
{
return conf.getProperty("PDFSIG_VISIBLE_SIGNATURE_TYPE", "GRAPHIC_AND_DESCRIPTION");
}
}
public int getVisibleAreaX()
{
if (signatureOptions.getVisibleAreaX() != null)
{
return signatureOptions.getVisibleAreaX();
}
else
{
return conf.getIntProperty("PDFSIG_VISIBLE_AREA_X", 0);
}
}
public int getVisibleAreaY()
{
if (signatureOptions.getVisibleAreaY() != null)
{
return signatureOptions.getVisibleAreaY();
}
else
{
return conf.getIntProperty("PDFSIG_VISIBLE_AREA_Y", 830);
}
}
public int getVisibleAreaX2()
{
if (signatureOptions.getVisibleAreaX2() != null)
{
return signatureOptions.getVisibleAreaX2();
}
else
{
return conf.getIntProperty("PDFSIG_VISIBLE_AREA_X2", 180);
}
}
public int getVisibleAreaY2()
{
if (signatureOptions.getVisibleAreaY2() != null)
{
return signatureOptions.getVisibleAreaY2();
}
else
{
return conf.getIntProperty("PDFSIG_VISIBLE_AREA_Y2", 785);
}
}
public String getVisibleAreaPage()
{
if (signatureOptions.getVisibleAreaPage() != null)
{
return signatureOptions.getVisibleAreaPage();
}
else
{
return conf.getProperty("PDFSIG_VISIBLE_AREA_PAGE", "ALL");
}
}
public int getVisibleAreaTextSize()
{
if (signatureOptions.getVisibleAreaTextSize() != null)
{
return signatureOptions.getVisibleAreaTextSize();
}
else
{
return conf.getIntProperty("PDFSIG_VISIBLE_AREA_TEXT_SIZE", 8);
}
}
public String getVisibleAreaImgFile()
{
if (signatureOptions.getVisibleAreaImgFile() != null
&& signatureOptions.getVisibleAreaImgFile().length() > 0)
{
return signatureOptions.getVisibleAreaImgFile();
}
else
{
return conf.getProperty("PDFSIG_VISIBLE_AREA_IMGFILE", "uji.jpg");
}
}
public String getVisibleAreaRepeatAxis()
{
if (signatureOptions.getVisibleAreaRepeatAxis() != null
&& signatureOptions.getVisibleAreaRepeatAxis().length() > 0)
{
return signatureOptions.getVisibleAreaRepeatAxis();
}
else
{
return conf.getProperty("PDFSIG_VISIBLE_AREA_REPEAT_AXIS", "X");
}
}
public String getVisibleAreaTextPattern()
{
if (signatureOptions.getVisibleAreaTextPattern() != null
&& signatureOptions.getVisibleAreaTextPattern().length() > 0)
{
return signatureOptions.getVisibleAreaTextPattern();
}
else
{
return conf.getProperty("PDFSIG_VISIBLE_AREA_TEXT_PATTERN", "");
}
}
}