private String[] getCustomFilterNodeValue(final Document doc) {
		List<String> values = new ArrayList<>();
		Node filterNode = this.getFirstLevelNodeByTag(doc, FILTER_TAG);
		if (filterNode == null) {
			return null;
		}
		Node customFilterNode = this.getNodeByTagInNode(filterNode, CUSTOM_TAG);
		if (customFilterNode == null) {
			return null;
		}

		Node implementorNode = this.getNodeByTagInNode(customFilterNode, IMPLEMENTOR_TAG);
		if (implementorNode == null) {
			return null;
		}
		String implementorValue = this.getNodeValue(implementorNode);
		if (implementorValue.isEmpty()) {
			return null;
		}
		values.add(implementorValue);

		NodeList paramNodes = this.getNodeListByTagInNode(customFilterNode, PARAM_TAG);
		for (int j = 0; j < paramNodes.getLength(); j++) {
			String paramValue = this.getNodeValue(paramNodes.item(j));
			values.add(paramValue);
		}

		return values.toArray(new String[values.size()]);
	}