- setting the property for DocumentBuilderFactory only once.
Issue-ID: CPS-1435
Change-Id: Ib1509e86c2f5572d184945dc55f1818a7147c259
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class XmlFileUtils {
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class XmlFileUtils {
+ private static final DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
+ private static boolean isNewDocumentBuilderFactoryInstance = true;
private static final TransformerFactory transformerFactory = TransformerFactory.newInstance();
private static boolean isNewTransformerFactoryInstance = true;
private static final Pattern XPATH_PROPERTY_REGEX =
private static final TransformerFactory transformerFactory = TransformerFactory.newInstance();
private static boolean isNewTransformerFactoryInstance = true;
private static final Pattern XPATH_PROPERTY_REGEX =
private static DocumentBuilderFactory getDocumentBuilderFactory() {
private static DocumentBuilderFactory getDocumentBuilderFactory() {
- final DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
- documentBuilderFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
- documentBuilderFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "");
+ if (isNewDocumentBuilderFactoryInstance) {
+ documentBuilderFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_DTD, "");
+ documentBuilderFactory.setAttribute(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "");
+ isNewDocumentBuilderFactoryInstance = false;
+ }
return documentBuilderFactory;
}
return documentBuilderFactory;
}