REOC-61 Upgrade to use dom4j for xml processor
This commit is contained in:
parent
8c68231333
commit
77d496ccef
|
@ -32,6 +32,8 @@ dependencies {
|
||||||
|
|
||||||
compile group: 'commons-logging', name: 'commons-logging', version: '1.1.1'
|
compile group: 'commons-logging', name: 'commons-logging', version: '1.1.1'
|
||||||
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.9'
|
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.9'
|
||||||
|
compile group: 'commons-io', name: 'commons-io', version: '2.6'
|
||||||
|
|
||||||
|
|
||||||
compile group: 'commons-codec', name: 'commons-codec', version: '1.3'
|
compile group: 'commons-codec', name: 'commons-codec', version: '1.3'
|
||||||
compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.1.1'
|
compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.1.1'
|
||||||
|
@ -39,7 +41,7 @@ dependencies {
|
||||||
compile group: 'com.google.guava', name: 'guava', version: '28.1-jre'
|
compile group: 'com.google.guava', name: 'guava', version: '28.1-jre'
|
||||||
|
|
||||||
// XML
|
// XML
|
||||||
compile 'jdom:jdom:1.0'
|
compile group: 'org.dom4j', name: 'dom4j', version: '2.1.1'
|
||||||
|
|
||||||
// TEST
|
// TEST
|
||||||
testCompile group: 'junit', name: 'junit', version: '4.12'
|
testCompile group: 'junit', name: 'junit', version: '4.12'
|
||||||
|
|
7
pom.xml
7
pom.xml
|
@ -24,10 +24,9 @@
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>jdom</groupId>
|
<groupId>org.dom4j</groupId>
|
||||||
<artifactId>jdom</artifactId>
|
<artifactId>dom4j</artifactId>
|
||||||
<version>1.0</version>
|
<version>2.1.1</version>
|
||||||
<optional>false</optional>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- TEST -->
|
<!-- TEST -->
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
package com.ossez.reoc.rets.client;
|
package com.ossez.reoc.rets.client;
|
||||||
|
|
||||||
|
import org.dom4j.Document;
|
||||||
|
import org.dom4j.Element;
|
||||||
|
import org.dom4j.io.SAXReader;
|
||||||
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import org.jdom.Document;
|
|
||||||
import org.jdom.Element;
|
|
||||||
import org.jdom.input.SAXBuilder;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dbt is lame and hasn't overridden the default
|
* dbt is lame and hasn't overridden the default
|
||||||
|
@ -12,10 +13,10 @@ import org.jdom.input.SAXBuilder;
|
||||||
*/
|
*/
|
||||||
public class ChangePasswordResponse {
|
public class ChangePasswordResponse {
|
||||||
public ChangePasswordResponse(InputStream stream) throws RetsException {
|
public ChangePasswordResponse(InputStream stream) throws RetsException {
|
||||||
SAXBuilder builder = new SAXBuilder();
|
SAXReader builder = new SAXReader();
|
||||||
Document document = null;
|
Document document = null;
|
||||||
try {
|
try {
|
||||||
document = builder.build(stream);
|
document = builder.read(stream);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RetsException(e);
|
throw new RetsException(e);
|
||||||
}
|
}
|
||||||
|
@ -24,11 +25,11 @@ public class ChangePasswordResponse {
|
||||||
throw new RetsException("Invalid Change Password Response");
|
throw new RetsException("Invalid Change Password Response");
|
||||||
}
|
}
|
||||||
|
|
||||||
int replyCode = Integer.parseInt(rets.getAttributeValue("ReplyCode"));
|
int replyCode = Integer.parseInt(rets.attributeValue("ReplyCode"));
|
||||||
if (replyCode != 0) {
|
if (replyCode != 0) {
|
||||||
InvalidReplyCodeException exception;
|
InvalidReplyCodeException exception;
|
||||||
exception = new InvalidReplyCodeException(replyCode);
|
exception = new InvalidReplyCodeException(replyCode);
|
||||||
exception.setRemoteMessage(rets.getAttributeValue("ReplyText"));
|
exception.setRemoteMessage(rets.attributeValue("ReplyText"));
|
||||||
throw exception;
|
throw exception;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,24 +9,24 @@ import com.ossez.reoc.rets.common.metadata.JDomStandardBuilder;
|
||||||
import com.ossez.reoc.rets.common.metadata.MetaObject;
|
import com.ossez.reoc.rets.common.metadata.MetaObject;
|
||||||
import com.ossez.reoc.rets.common.metadata.MetadataException;
|
import com.ossez.reoc.rets.common.metadata.MetadataException;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
|
import org.dom4j.Document;
|
||||||
|
import org.dom4j.DocumentException;
|
||||||
|
import org.dom4j.Element;
|
||||||
|
import org.dom4j.io.SAXReader;
|
||||||
|
|
||||||
import org.jdom.Element;
|
|
||||||
import org.jdom.JDOMException;
|
|
||||||
import org.jdom.Document;
|
|
||||||
import org.jdom.input.SAXBuilder;
|
|
||||||
|
|
||||||
public class GetMetadataResponse {
|
public class GetMetadataResponse {
|
||||||
private MetaObject[] mMetadataObjs;
|
private MetaObject[] mMetadataObjs;
|
||||||
|
|
||||||
public GetMetadataResponse(InputStream stream, boolean compact, boolean isStrict) throws RetsException {
|
public GetMetadataResponse(InputStream stream, boolean compact, boolean isStrict) throws RetsException {
|
||||||
try {
|
try {
|
||||||
SAXBuilder builder = new SAXBuilder();
|
SAXReader builder = new SAXReader();
|
||||||
Document document = builder.build(stream);
|
Document document = builder.read(stream);
|
||||||
Element retsElement = document.getRootElement();
|
Element retsElement = document.getRootElement();
|
||||||
if (!retsElement.getName().equals("RETS")) {
|
if (!retsElement.getName().equals("RETS")) {
|
||||||
throw new RetsException("Expecting RETS");
|
throw new RetsException("Expecting RETS");
|
||||||
}
|
}
|
||||||
int replyCode = NumberUtils.toInt(retsElement.getAttributeValue("ReplyCode"));
|
int replyCode = NumberUtils.toInt(retsElement.attributeValue("ReplyCode"));
|
||||||
if (ReplyCode.SUCCESS.equals(replyCode)) {
|
if (ReplyCode.SUCCESS.equals(replyCode)) {
|
||||||
if (compact) {
|
if (compact) {
|
||||||
handleCompactMetadata(document, isStrict);
|
handleCompactMetadata(document, isStrict);
|
||||||
|
@ -38,18 +38,16 @@ public class GetMetadataResponse {
|
||||||
handleNoMetadataFound(retsElement);
|
handleNoMetadataFound(retsElement);
|
||||||
} else {
|
} else {
|
||||||
InvalidReplyCodeException e = new InvalidReplyCodeException(replyCode);
|
InvalidReplyCodeException e = new InvalidReplyCodeException(replyCode);
|
||||||
e.setRemoteMessage(retsElement.getAttributeValue(retsElement.getAttributeValue("ReplyText")));
|
e.setRemoteMessage(retsElement.attributeValue(retsElement.attributeValue("ReplyText")));
|
||||||
throw e;
|
throw e;
|
||||||
}
|
}
|
||||||
} catch (JDOMException e) {
|
} catch (DocumentException e) {
|
||||||
throw new RetsException(e);
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RetsException(e);
|
throw new RetsException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleNoMetadataFound(Element retsElement) throws RetsException {
|
private void handleNoMetadataFound(Element retsElement) throws RetsException {
|
||||||
List children = retsElement.getChildren();
|
List children = retsElement.elements();
|
||||||
if (children.size() != 0) {
|
if (children.size() != 0) {
|
||||||
throw new RetsException("Expecting 0 children when results");
|
throw new RetsException("Expecting 0 children when results");
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,10 +10,11 @@ import org.apache.commons.lang3.math.NumberUtils;
|
||||||
import org.apache.http.HeaderElement;
|
import org.apache.http.HeaderElement;
|
||||||
import org.apache.http.NameValuePair;
|
import org.apache.http.NameValuePair;
|
||||||
import org.apache.http.message.BasicHeaderValueParser;
|
import org.apache.http.message.BasicHeaderValueParser;
|
||||||
import org.jdom.Document;
|
import org.dom4j.Document;
|
||||||
import org.jdom.Element;
|
import org.dom4j.DocumentException;
|
||||||
import org.jdom.JDOMException;
|
import org.dom4j.Element;
|
||||||
import org.jdom.input.SAXBuilder;
|
import org.dom4j.io.SAXReader;
|
||||||
|
import org.w3c.dom.DOMException;
|
||||||
|
|
||||||
public class GetObjectResponse{
|
public class GetObjectResponse{
|
||||||
private static final int DEFAULT_BUFFER_SIZE = 8192;
|
private static final int DEFAULT_BUFFER_SIZE = 8192;
|
||||||
|
@ -59,11 +60,11 @@ public class GetObjectResponse{
|
||||||
try {
|
try {
|
||||||
// GetObjectResponse is empty, because we have a Rets ReplyCode
|
// GetObjectResponse is empty, because we have a Rets ReplyCode
|
||||||
this.emptyResponse = true;
|
this.emptyResponse = true;
|
||||||
SAXBuilder builder = new SAXBuilder();
|
SAXReader builder = new SAXReader();
|
||||||
Document mDocument = builder.build(in);
|
Document mDocument = builder.read(in);
|
||||||
Element root = mDocument.getRootElement();
|
Element root = mDocument.getRootElement();
|
||||||
if (root.getName().equals("RETS")) {
|
if (root.getName().equals("RETS")) {
|
||||||
replyCode = NumberUtils.toInt(root.getAttributeValue("ReplyCode"));
|
replyCode = NumberUtils.toInt(root.attributeValue("ReplyCode"));
|
||||||
|
|
||||||
// success
|
// success
|
||||||
if (ReplyCode.SUCCESS.equals(replyCode)) return;
|
if (ReplyCode.SUCCESS.equals(replyCode)) return;
|
||||||
|
@ -76,12 +77,10 @@ public class GetObjectResponse{
|
||||||
// no other possibilities
|
// no other possibilities
|
||||||
throw new RetsException("Malformed response [multipart="+this.isMultipart+", content-type=text/xml]. " +
|
throw new RetsException("Malformed response [multipart="+this.isMultipart+", content-type=text/xml]. " +
|
||||||
"Content id did not exist in response and response was not valid rets response.");
|
"Content id did not exist in response and response was not valid rets response.");
|
||||||
} catch (JDOMException e) {
|
} catch (DocumentException e) {
|
||||||
throw new RetsException(e);
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RetsException(e);
|
throw new RetsException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getType() {
|
public String getType() {
|
||||||
|
|
|
@ -1,21 +1,21 @@
|
||||||
package com.ossez.reoc.rets.client;
|
package com.ossez.reoc.rets.client;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.StringTokenizer;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
import org.jdom.Element;
|
|
||||||
import org.jdom.JDOMException;
|
|
||||||
import org.jdom.Document;
|
|
||||||
import org.jdom.input.SAXBuilder;
|
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
import org.dom4j.Document;
|
||||||
|
import org.dom4j.DocumentException;
|
||||||
|
import org.dom4j.Element;
|
||||||
|
import org.dom4j.io.SAXReader;
|
||||||
|
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.StringTokenizer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
abstract public class KeyValueResponse {
|
abstract public class KeyValueResponse {
|
||||||
protected static final String CRLF = "\r\n";
|
protected static final String CRLF = "\r\n";
|
||||||
private static final Log LOG = LogFactory.getLog(KeyValueResponse.class);
|
private static final Log LOG = LogFactory.getLog(KeyValueResponse.class);
|
||||||
|
@ -30,14 +30,14 @@ abstract public class KeyValueResponse {
|
||||||
|
|
||||||
public void parse(InputStream stream, RetsVersion mVersion) throws RetsException {
|
public void parse(InputStream stream, RetsVersion mVersion) throws RetsException {
|
||||||
try {
|
try {
|
||||||
SAXBuilder builder = new SAXBuilder();
|
SAXReader builder = new SAXReader();
|
||||||
this.mDoc = builder.build(stream);
|
this.mDoc = builder.read(stream);
|
||||||
Element retsElement = this.mDoc.getRootElement();
|
Element retsElement = this.mDoc.getRootElement();
|
||||||
if (!retsElement.getName().equals("RETS")) {
|
if (!retsElement.getName().equals("RETS")) {
|
||||||
throw new RetsException("Expecting RETS");
|
throw new RetsException("Expecting RETS");
|
||||||
}
|
}
|
||||||
|
|
||||||
int replyCode = NumberUtils.toInt(retsElement.getAttributeValue("ReplyCode"));
|
int replyCode = NumberUtils.toInt(retsElement.attributeValue("ReplyCode"));
|
||||||
this.mReplyCode = replyCode;
|
this.mReplyCode = replyCode;
|
||||||
if (!isValidReplyCode(replyCode)) {
|
if (!isValidReplyCode(replyCode)) {
|
||||||
throw new InvalidReplyCodeException(replyCode);
|
throw new InvalidReplyCodeException(replyCode);
|
||||||
|
@ -46,7 +46,7 @@ abstract public class KeyValueResponse {
|
||||||
if (RetsVersion.RETS_10.equals(mVersion)) {
|
if (RetsVersion.RETS_10.equals(mVersion)) {
|
||||||
capabilityContainer = retsElement;
|
capabilityContainer = retsElement;
|
||||||
} else {
|
} else {
|
||||||
List children = retsElement.getChildren();
|
List children = retsElement.elements();
|
||||||
if (children.size() != 1) {
|
if (children.size() != 1) {
|
||||||
throw new RetsException("Invalid number of children: " + children.size());
|
throw new RetsException("Invalid number of children: " + children.size());
|
||||||
}
|
}
|
||||||
|
@ -58,9 +58,7 @@ abstract public class KeyValueResponse {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.handleRetsResponse(capabilityContainer);
|
this.handleRetsResponse(capabilityContainer);
|
||||||
} catch (JDOMException e) {
|
} catch (DocumentException e) {
|
||||||
throw new RetsException(e);
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RetsException(e);
|
throw new RetsException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,11 +9,11 @@ import com.ossez.reoc.rets.common.metadata.JDomCompactBuilder;
|
||||||
import com.ossez.reoc.rets.common.metadata.JDomStandardBuilder;
|
import com.ossez.reoc.rets.common.metadata.JDomStandardBuilder;
|
||||||
import com.ossez.reoc.rets.common.metadata.Metadata;
|
import com.ossez.reoc.rets.common.metadata.Metadata;
|
||||||
import com.ossez.reoc.rets.common.metadata.MetadataBuilder;
|
import com.ossez.reoc.rets.common.metadata.MetadataBuilder;
|
||||||
import org.jdom.Document;
|
|
||||||
import org.jdom.input.SAXBuilder;
|
|
||||||
import org.jdom.output.XMLOutputter;
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
import org.dom4j.Document;
|
||||||
|
import org.dom4j.io.SAXReader;
|
||||||
|
import org.dom4j.io.XMLWriter;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -278,13 +278,16 @@ public class RetsTransport {
|
||||||
Object monitorobj = null;
|
Object monitorobj = null;
|
||||||
monitorobj = this.monitor.eventStart("Parsing metadata");
|
monitorobj = this.monitor.eventStart("Parsing metadata");
|
||||||
try {
|
try {
|
||||||
SAXBuilder xmlBuilder = new SAXBuilder();
|
SAXReader xmlBuilder = new SAXReader();
|
||||||
Document xmlDocument = xmlBuilder.build(httpResponse.getInputStream());
|
Document xmlDocument = xmlBuilder.read(httpResponse.getInputStream());
|
||||||
if (!location.equals("null")){
|
if (!location.equals("null")){
|
||||||
XMLOutputter outputter = new XMLOutputter();
|
|
||||||
FileWriter writer = new FileWriter(location);
|
FileWriter writer = new FileWriter(location);
|
||||||
outputter.output(xmlDocument, writer);
|
XMLWriter outputter = new XMLWriter(writer);
|
||||||
outputter.outputString(xmlDocument);
|
|
||||||
|
outputter.write(xmlDocument);
|
||||||
|
outputter.close();
|
||||||
|
|
||||||
}
|
}
|
||||||
MetadataBuilder metadataBuilder;
|
MetadataBuilder metadataBuilder;
|
||||||
if (req.isCompactFormat()) {
|
if (req.isCompactFormat()) {
|
||||||
|
|
|
@ -14,10 +14,8 @@ import java.util.StringTokenizer;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.jdom.Document;
|
import org.dom4j.*;
|
||||||
import org.jdom.Element;
|
|
||||||
import org.jdom.JDOMException;
|
|
||||||
import org.jdom.input.SAXBuilder;
|
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MClass;
|
import com.ossez.reoc.rets.common.metadata.types.MClass;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MEditMask;
|
import com.ossez.reoc.rets.common.metadata.types.MEditMask;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MLookup;
|
import com.ossez.reoc.rets.common.metadata.types.MLookup;
|
||||||
|
@ -34,6 +32,7 @@ import com.ossez.reoc.rets.common.metadata.types.MValidationExternal;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MValidationExternalType;
|
import com.ossez.reoc.rets.common.metadata.types.MValidationExternalType;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MValidationLookup;
|
import com.ossez.reoc.rets.common.metadata.types.MValidationLookup;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MValidationLookupType;
|
import com.ossez.reoc.rets.common.metadata.types.MValidationLookupType;
|
||||||
|
import org.dom4j.io.SAXReader;
|
||||||
import org.xml.sax.InputSource;
|
import org.xml.sax.InputSource;
|
||||||
|
|
||||||
public class JDomCompactBuilder extends MetadataBuilder {
|
public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
@ -75,13 +74,11 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Metadata build(InputSource source) throws MetadataException {
|
public Metadata build(InputSource source) throws MetadataException {
|
||||||
SAXBuilder builder = new SAXBuilder();
|
SAXReader builder = new SAXReader();
|
||||||
Document document;
|
Document document;
|
||||||
try {
|
try {
|
||||||
document = builder.build(source);
|
document = builder.read(source);
|
||||||
} catch (JDOMException e) {
|
} catch (DocumentException e) {
|
||||||
throw new MetadataException("Couldn't build document", e);
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new MetadataException("Couldn't build document", e);
|
throw new MetadataException("Couldn't build document", e);
|
||||||
}
|
}
|
||||||
return build(document);
|
return build(document);
|
||||||
|
@ -97,72 +94,72 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
if (!root.getName().equals(CONTAINER_ROOT)) {
|
if (!root.getName().equals(CONTAINER_ROOT)) {
|
||||||
throw new MetadataException("Invalid root element");
|
throw new MetadataException("Invalid root element");
|
||||||
}
|
}
|
||||||
Element container = root.getChild(CONTAINER_SYSTEM);
|
Element container = root.element(CONTAINER_SYSTEM);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
MSystem sys = processSystem(container);
|
MSystem sys = processSystem(container);
|
||||||
if (root.getChild(CONTAINER_RESOURCE) != null) {
|
if (root.element(CONTAINER_RESOURCE) != null) {
|
||||||
Metadata m = new Metadata(sys);
|
Metadata m = new Metadata(sys);
|
||||||
recurseAll(m, root);
|
recurseAll(m, root);
|
||||||
}
|
}
|
||||||
return new MetaObject[] { sys };
|
return new MetaObject[] { sys };
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_RESOURCE);
|
container = root.element(CONTAINER_RESOURCE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processResource(container);
|
return processResource(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_CLASS);
|
container = root.element(CONTAINER_CLASS);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processClass(container);
|
return processClass(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_TABLE);
|
container = root.element(CONTAINER_TABLE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processTable(container);
|
return processTable(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_UPDATE);
|
container = root.element(CONTAINER_UPDATE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processUpdate(container);
|
return processUpdate(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_UPDATETYPE);
|
container = root.element(CONTAINER_UPDATETYPE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processUpdateType(container);
|
return processUpdateType(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_OBJECT);
|
container = root.element(CONTAINER_OBJECT);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processObject(container);
|
return processObject(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_SEARCHHELP);
|
container = root.element(CONTAINER_SEARCHHELP);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processSearchHelp(container);
|
return processSearchHelp(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_EDITMASK);
|
container = root.element(CONTAINER_EDITMASK);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processEditMask(container);
|
return processEditMask(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_LOOKUP);
|
container = root.element(CONTAINER_LOOKUP);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processLookup(container);
|
return processLookup(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_LOOKUPTYPE);
|
container = root.element(CONTAINER_LOOKUPTYPE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processLookupType(container);
|
return processLookupType(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_VALIDATIONLOOKUP);
|
container = root.element(CONTAINER_VALIDATIONLOOKUP);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processValidationLookup(container);
|
return processValidationLookup(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_VALIDATIONLOOKUPTYPE);
|
container = root.element(CONTAINER_VALIDATIONLOOKUPTYPE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processValidationLookupType(container);
|
return processValidationLookupType(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_VALIDATIONEXTERNAL);
|
container = root.element(CONTAINER_VALIDATIONEXTERNAL);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processValidationExternal(container);
|
return processValidationExternal(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_VALIDATIONEXTERNALTYPE);
|
container = root.element(CONTAINER_VALIDATIONEXTERNALTYPE);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processValidationExternalType(container);
|
return processValidationExternalType(container);
|
||||||
}
|
}
|
||||||
container = root.getChild(CONTAINER_VALIDATIONEXPRESSION);
|
container = root.element(CONTAINER_VALIDATIONEXPRESSION);
|
||||||
if (container != null) {
|
if (container != null) {
|
||||||
return processValidationExpression(container);
|
return processValidationExpression(container);
|
||||||
}
|
}
|
||||||
|
@ -174,7 +171,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
if (!root.getName().equals(CONTAINER_ROOT)) {
|
if (!root.getName().equals(CONTAINER_ROOT)) {
|
||||||
throw new MetadataException("Invalid root element");
|
throw new MetadataException("Invalid root element");
|
||||||
}
|
}
|
||||||
Element element = root.getChild(CONTAINER_SYSTEM);
|
Element element = root.element(CONTAINER_SYSTEM);
|
||||||
if (element == null) {
|
if (element == null) {
|
||||||
throw new MetadataException("Missing element " + CONTAINER_SYSTEM);
|
throw new MetadataException("Missing element " + CONTAINER_SYSTEM);
|
||||||
}
|
}
|
||||||
|
@ -218,7 +215,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private String[] getColumns(Element el) {
|
private String[] getColumns(Element el) {
|
||||||
Element cols = el.getChild(COLUMNS);
|
Element cols = el.element(COLUMNS);
|
||||||
return split(cols);
|
return split(cols);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -256,7 +253,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
* @throws MetaParseException if the value is null.
|
* @throws MetaParseException if the value is null.
|
||||||
*/
|
*/
|
||||||
private String getNonNullAttribute(Element element, String name) throws MetaParseException {
|
private String getNonNullAttribute(Element element, String name) throws MetaParseException {
|
||||||
String value = element.getAttributeValue(name);
|
String value = element.attributeValue(name);
|
||||||
if (value == null) {
|
if (value == null) {
|
||||||
throw new MetaParseException("Attribute '" + name + "' not found on tag " + toString(element));
|
throw new MetaParseException("Attribute '" + name + "' not found on tag " + toString(element));
|
||||||
}
|
}
|
||||||
|
@ -265,21 +262,21 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private String toString(Element element) {
|
private String toString(Element element) {
|
||||||
StringBuffer buffer = new StringBuffer();
|
StringBuffer buffer = new StringBuffer();
|
||||||
List attributes = element.getAttributes();
|
List attributes = element.attributes();
|
||||||
buffer.append("'").append(element.getName()).append("'");
|
buffer.append("'").append(element.getName()).append("'");
|
||||||
buffer.append(", attributes: ").append(attributes);
|
buffer.append(", attributes: ").append(attributes);
|
||||||
return buffer.toString();
|
return buffer.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
private MSystem processSystem(Element container) {
|
private MSystem processSystem(Element container) {
|
||||||
Element element = container.getChild(ELEMENT_SYSTEM);
|
Element element = container.element(ELEMENT_SYSTEM);
|
||||||
MSystem system = buildSystem();
|
MSystem system = buildSystem();
|
||||||
// system metadata is such a hack. the first one here is by far my favorite
|
// system metadata is such a hack. the first one here is by far my favorite
|
||||||
String comment = container.getChildText(MSystem.COMMENTS);
|
String comment = container.elementText(MSystem.COMMENTS);
|
||||||
String systemId = element.getAttributeValue(MSystem.SYSTEMID);
|
String systemId = element.attributeValue(MSystem.SYSTEMID);
|
||||||
String systemDescription = element.getAttributeValue(MSystem.SYSTEMDESCRIPTION);
|
String systemDescription = element.attributeValue(MSystem.SYSTEMDESCRIPTION);
|
||||||
String version = container.getAttributeValue(MSystem.VERSION);
|
String version = container.attributeValue(MSystem.VERSION);
|
||||||
String date = container.getAttributeValue(MSystem.DATE);
|
String date = container.attributeValue(MSystem.DATE);
|
||||||
setAttribute(system, MSystem.COMMENTS, comment);
|
setAttribute(system, MSystem.COMMENTS, comment);
|
||||||
setAttribute(system, MSystem.SYSTEMID, systemId);
|
setAttribute(system, MSystem.SYSTEMID, systemId);
|
||||||
setAttribute(system, MSystem.SYSTEMDESCRIPTION, systemDescription);
|
setAttribute(system, MSystem.SYSTEMDESCRIPTION, systemDescription);
|
||||||
|
@ -290,7 +287,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private void attachResource(Metadata metadata, Element root) {
|
private void attachResource(Metadata metadata, Element root) {
|
||||||
MSystem system = metadata.getSystem();
|
MSystem system = metadata.getSystem();
|
||||||
List containers = root.getChildren(CONTAINER_RESOURCE);
|
List containers = root.elements(CONTAINER_RESOURCE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource[] resources = this.processResource(container);
|
MResource[] resources = this.processResource(container);
|
||||||
|
@ -302,7 +299,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MResource[] processResource(Element resourceContainer) {
|
private MResource[] processResource(Element resourceContainer) {
|
||||||
String[] columns = getColumns(resourceContainer);
|
String[] columns = getColumns(resourceContainer);
|
||||||
List rows = resourceContainer.getChildren(DATA);
|
List rows = resourceContainer.elements(DATA);
|
||||||
MResource[] resources = new MResource[rows.size()];
|
MResource[] resources = new MResource[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -315,7 +312,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachClass(Metadata metadata, Element root) throws MetaParseException {
|
private void attachClass(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_CLASS);
|
List containers = root.elements(CONTAINER_CLASS);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
String resourceId = getNonNullAttribute(container, ATTRIBUTE_RESOURCE);
|
String resourceId = getNonNullAttribute(container, ATTRIBUTE_RESOURCE);
|
||||||
|
@ -332,7 +329,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
String resourceId = getNonNullAttribute(classContainer, ATTRIBUTE_RESOURCE);
|
String resourceId = getNonNullAttribute(classContainer, ATTRIBUTE_RESOURCE);
|
||||||
LOG.debug("resource name: " + resourceId + " for container " + name);
|
LOG.debug("resource name: " + resourceId + " for container " + name);
|
||||||
String[] columns = getColumns(classContainer);
|
String[] columns = getColumns(classContainer);
|
||||||
List rows = classContainer.getChildren(DATA);
|
List rows = classContainer.elements(DATA);
|
||||||
MClass[] classes = new MClass[rows.size()];
|
MClass[] classes = new MClass[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -345,7 +342,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachTable(Metadata metadata, Element root) throws MetaParseException {
|
private void attachTable(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_TABLE);
|
List containers = root.elements(CONTAINER_TABLE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
String resourceId = getNonNullAttribute(container, ATTRIBUTE_RESOURCE);
|
String resourceId = getNonNullAttribute(container, ATTRIBUTE_RESOURCE);
|
||||||
|
@ -368,7 +365,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MTable[] processTable(Element tableContainer) {
|
private MTable[] processTable(Element tableContainer) {
|
||||||
String[] columns = getColumns(tableContainer);
|
String[] columns = getColumns(tableContainer);
|
||||||
List rows = tableContainer.getChildren(DATA);
|
List rows = tableContainer.elements(DATA);
|
||||||
MTable[] fieldMetadata = new MTable[rows.size()];
|
MTable[] fieldMetadata = new MTable[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -381,7 +378,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachUpdate(Metadata metadata, Element root) throws MetaParseException {
|
private void attachUpdate(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_UPDATE);
|
List containers = root.elements(CONTAINER_UPDATE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MClass parent = metadata.getMClass(getNonNullAttribute(container, ATTRIBUTE_RESOURCE), getNonNullAttribute(
|
MClass parent = metadata.getMClass(getNonNullAttribute(container, ATTRIBUTE_RESOURCE), getNonNullAttribute(
|
||||||
|
@ -395,7 +392,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MUpdate[] processUpdate(Element container) {
|
private MUpdate[] processUpdate(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MUpdate[] updates = new MUpdate[rows.size()];
|
MUpdate[] updates = new MUpdate[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -408,7 +405,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachUpdateType(Metadata metadata, Element root) throws MetaParseException {
|
private void attachUpdateType(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_UPDATETYPE);
|
List containers = root.elements(CONTAINER_UPDATETYPE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MUpdate parent = metadata.getUpdate(getNonNullAttribute(container, ATTRIBUTE_RESOURCE),
|
MUpdate parent = metadata.getUpdate(getNonNullAttribute(container, ATTRIBUTE_RESOURCE),
|
||||||
|
@ -422,7 +419,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MUpdateType[] processUpdateType(Element container) {
|
private MUpdateType[] processUpdateType(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MUpdateType[] updateTypes = new MUpdateType[rows.size()];
|
MUpdateType[] updateTypes = new MUpdateType[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -435,7 +432,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachObject(Metadata metadata, Element root) throws MetaParseException {
|
private void attachObject(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_OBJECT);
|
List containers = root.elements(CONTAINER_OBJECT);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
||||||
|
@ -448,7 +445,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MObject[] processObject(Element objectContainer) {
|
private MObject[] processObject(Element objectContainer) {
|
||||||
String[] columns = getColumns(objectContainer);
|
String[] columns = getColumns(objectContainer);
|
||||||
List rows = objectContainer.getChildren(DATA);
|
List rows = objectContainer.elements(DATA);
|
||||||
MObject[] objects = new MObject[rows.size()];
|
MObject[] objects = new MObject[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -461,7 +458,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachSearchHelp(Metadata metadata, Element root) throws MetaParseException {
|
private void attachSearchHelp(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_SEARCHHELP);
|
List containers = root.elements(CONTAINER_SEARCHHELP);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
||||||
|
@ -474,7 +471,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MSearchHelp[] processSearchHelp(Element container) {
|
private MSearchHelp[] processSearchHelp(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MSearchHelp[] searchHelps = new MSearchHelp[rows.size()];
|
MSearchHelp[] searchHelps = new MSearchHelp[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -487,7 +484,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachEditMask(Metadata metadata, Element root) throws MetaParseException {
|
private void attachEditMask(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_EDITMASK);
|
List containers = root.elements(CONTAINER_EDITMASK);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
||||||
|
@ -500,7 +497,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MEditMask[] processEditMask(Element container) {
|
private MEditMask[] processEditMask(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MEditMask[] editMasks = new MEditMask[rows.size()];
|
MEditMask[] editMasks = new MEditMask[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -513,7 +510,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachLookup(Metadata metadata, Element root) throws MetaParseException {
|
private void attachLookup(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_LOOKUP);
|
List containers = root.elements(CONTAINER_LOOKUP);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
||||||
|
@ -526,7 +523,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MLookup[] processLookup(Element container) {
|
private MLookup[] processLookup(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MLookup[] lookups = new MLookup[rows.size()];
|
MLookup[] lookups = new MLookup[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -539,7 +536,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachLookupType(Metadata metadata, Element root) throws MetaParseException {
|
private void attachLookupType(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_LOOKUPTYPE);
|
List containers = root.elements(CONTAINER_LOOKUPTYPE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MLookup parent = metadata.getLookup(getNonNullAttribute(container, ATTRIBUTE_RESOURCE),
|
MLookup parent = metadata.getLookup(getNonNullAttribute(container, ATTRIBUTE_RESOURCE),
|
||||||
|
@ -559,7 +556,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MLookupType[] processLookupType(Element container) {
|
private MLookupType[] processLookupType(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MLookupType[] lookupTypes = new MLookupType[rows.size()];
|
MLookupType[] lookupTypes = new MLookupType[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -572,7 +569,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachValidationLookup(Metadata metadata, Element root) throws MetaParseException {
|
private void attachValidationLookup(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_VALIDATIONLOOKUP);
|
List containers = root.elements(CONTAINER_VALIDATIONLOOKUP);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
||||||
|
@ -585,7 +582,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MValidationLookup[] processValidationLookup(Element container) {
|
private MValidationLookup[] processValidationLookup(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MValidationLookup[] validationLookups = new MValidationLookup[rows.size()];
|
MValidationLookup[] validationLookups = new MValidationLookup[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -598,7 +595,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachValidationLookupType(Metadata metadata, Element root) throws MetaParseException {
|
private void attachValidationLookupType(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_VALIDATIONLOOKUPTYPE);
|
List containers = root.elements(CONTAINER_VALIDATIONLOOKUPTYPE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MValidationLookup parent = metadata.getValidationLookup(getNonNullAttribute(container, ATTRIBUTE_RESOURCE),
|
MValidationLookup parent = metadata.getValidationLookup(getNonNullAttribute(container, ATTRIBUTE_RESOURCE),
|
||||||
|
@ -612,7 +609,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MValidationLookupType[] processValidationLookupType(Element container) {
|
private MValidationLookupType[] processValidationLookupType(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MValidationLookupType[] validationLookupTypes = new MValidationLookupType[rows.size()];
|
MValidationLookupType[] validationLookupTypes = new MValidationLookupType[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -625,10 +622,10 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachValidationExternal(Metadata metadata, Element root) {
|
private void attachValidationExternal(Metadata metadata, Element root) {
|
||||||
List containers = root.getChildren(CONTAINER_VALIDATIONEXTERNAL);
|
List containers = root.elements(CONTAINER_VALIDATIONEXTERNAL);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(container.getAttributeValue(ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(container.attributeValue(ATTRIBUTE_RESOURCE));
|
||||||
MValidationExternal[] validationExternals = processValidationExternal(container);
|
MValidationExternal[] validationExternals = processValidationExternal(container);
|
||||||
for (int j = 0; j < validationExternals.length; j++) {
|
for (int j = 0; j < validationExternals.length; j++) {
|
||||||
parent.addChild(MetadataType.VALIDATION_EXTERNAL, validationExternals[j]);
|
parent.addChild(MetadataType.VALIDATION_EXTERNAL, validationExternals[j]);
|
||||||
|
@ -638,7 +635,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MValidationExternal[] processValidationExternal(Element container) {
|
private MValidationExternal[] processValidationExternal(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MValidationExternal[] validationExternals = new MValidationExternal[rows.size()];
|
MValidationExternal[] validationExternals = new MValidationExternal[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -651,7 +648,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachValidationExternalType(Metadata metadata, Element root) throws MetaParseException {
|
private void attachValidationExternalType(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_VALIDATIONEXTERNALTYPE);
|
List containers = root.elements(CONTAINER_VALIDATIONEXTERNALTYPE);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MValidationExternal parent = metadata.getValidationExternal(getNonNullAttribute(container,
|
MValidationExternal parent = metadata.getValidationExternal(getNonNullAttribute(container,
|
||||||
|
@ -665,7 +662,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MValidationExternalType[] processValidationExternalType(Element container) {
|
private MValidationExternalType[] processValidationExternalType(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MValidationExternalType[] validationExternalTypes = new MValidationExternalType[rows.size()];
|
MValidationExternalType[] validationExternalTypes = new MValidationExternalType[rows.size()];
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
@ -678,7 +675,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void attachValidationExpression(Metadata metadata, Element root) throws MetaParseException {
|
private void attachValidationExpression(Metadata metadata, Element root) throws MetaParseException {
|
||||||
List containers = root.getChildren(CONTAINER_VALIDATIONEXPRESSION);
|
List containers = root.elements(CONTAINER_VALIDATIONEXPRESSION);
|
||||||
for (int i = 0; i < containers.size(); i++) {
|
for (int i = 0; i < containers.size(); i++) {
|
||||||
Element container = (Element) containers.get(i);
|
Element container = (Element) containers.get(i);
|
||||||
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
MResource parent = metadata.getResource(getNonNullAttribute(container, ATTRIBUTE_RESOURCE));
|
||||||
|
@ -691,7 +688,7 @@ public class JDomCompactBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private MValidationExpression[] processValidationExpression(Element container) {
|
private MValidationExpression[] processValidationExpression(Element container) {
|
||||||
String[] columns = getColumns(container);
|
String[] columns = getColumns(container);
|
||||||
List rows = container.getChildren(DATA);
|
List rows = container.elements(DATA);
|
||||||
MValidationExpression[] expressions = new MValidationExpression[rows.size()];
|
MValidationExpression[] expressions = new MValidationExpression[rows.size()];
|
||||||
for (int i = 0; i < expressions.length; i++) {
|
for (int i = 0; i < expressions.length; i++) {
|
||||||
Element element = (Element) rows.get(i);
|
Element element = (Element) rows.get(i);
|
||||||
|
|
|
@ -13,9 +13,6 @@ import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
import org.jdom.Attribute;
|
|
||||||
import org.jdom.Document;
|
|
||||||
import org.jdom.Element;
|
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MClass;
|
import com.ossez.reoc.rets.common.metadata.types.MClass;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MEditMask;
|
import com.ossez.reoc.rets.common.metadata.types.MEditMask;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MForeignKey;
|
import com.ossez.reoc.rets.common.metadata.types.MForeignKey;
|
||||||
|
@ -34,6 +31,9 @@ import com.ossez.reoc.rets.common.metadata.types.MValidationExternal;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MValidationExternalType;
|
import com.ossez.reoc.rets.common.metadata.types.MValidationExternalType;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MValidationLookup;
|
import com.ossez.reoc.rets.common.metadata.types.MValidationLookup;
|
||||||
import com.ossez.reoc.rets.common.metadata.types.MValidationLookupType;
|
import com.ossez.reoc.rets.common.metadata.types.MValidationLookupType;
|
||||||
|
import org.dom4j.Attribute;
|
||||||
|
import org.dom4j.Document;
|
||||||
|
import org.dom4j.Element;
|
||||||
|
|
||||||
/** Parses apart a complete Standard-XML response, returns a Metadata object */
|
/** Parses apart a complete Standard-XML response, returns a Metadata object */
|
||||||
public class JDomStandardBuilder extends MetadataBuilder {
|
public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
|
@ -105,7 +105,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
expectElement(element, CONTAINER_ROOT);
|
expectElement(element, CONTAINER_ROOT);
|
||||||
Element container = getElement(element, CONTAINER_METADATA);
|
Element container = getElement(element, CONTAINER_METADATA);
|
||||||
boolean recurse = checkForRecursion(container);
|
boolean recurse = checkForRecursion(container);
|
||||||
List list = container.getChildren();
|
List list = container.elements();
|
||||||
if (list.size() == 0) {
|
if (list.size() == 0) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -130,15 +130,15 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
* we fall all the way to the end then there probably wasn't that
|
* we fall all the way to the end then there probably wasn't that
|
||||||
* much to look through.
|
* much to look through.
|
||||||
*/
|
*/
|
||||||
Iterator children = top.getChildren().iterator();
|
Iterator children = top.elements().iterator();
|
||||||
while (children.hasNext()) {
|
while (children.hasNext()) {
|
||||||
/* each of these is a container (METADATA-*) type */
|
/* each of these is a container (METADATA-*) type */
|
||||||
Element element = (Element) children.next();
|
Element element = (Element) children.next();
|
||||||
Iterator iterator = element.getChildren().iterator();
|
Iterator iterator = element.elements().iterator();
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
/* each of these is an item element */
|
/* each of these is an item element */
|
||||||
Element child = (Element) iterator.next();
|
Element child = (Element) iterator.next();
|
||||||
Iterator subtypes = child.getChildren().iterator();
|
Iterator subtypes = child.elements().iterator();
|
||||||
while (subtypes.hasNext()) {
|
while (subtypes.hasNext()) {
|
||||||
Element subtype = (Element) subtypes.next();
|
Element subtype = (Element) subtypes.next();
|
||||||
if (subtype.getName().startsWith(CONTAINER_PREFIX)) {
|
if (subtype.getName().startsWith(CONTAINER_PREFIX)) {
|
||||||
|
@ -155,7 +155,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
if (type == null) {
|
if (type == null) {
|
||||||
throw new RuntimeException("no matching type for container " + container.getName());
|
throw new RuntimeException("no matching type for container " + container.getName());
|
||||||
}
|
}
|
||||||
List elements = container.getChildren((String) sType2Element.get(type));
|
List elements = container.elements((String) sType2Element.get(type));
|
||||||
String path = getPath(container);
|
String path = getPath(container);
|
||||||
List output = null;
|
List output = null;
|
||||||
if (parent == null) {
|
if (parent == null) {
|
||||||
|
@ -185,7 +185,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
MetadataType[] childTypes = obj.getChildTypes();
|
MetadataType[] childTypes = obj.getChildTypes();
|
||||||
for (int j = 0; j < childTypes.length; j++) {
|
for (int j = 0; j < childTypes.length; j++) {
|
||||||
MetadataType childType = childTypes[j];
|
MetadataType childType = childTypes[j];
|
||||||
Element childContainer = element.getChild(CONTAINER_PREFIX + childType.name());
|
Element childContainer = element.element(CONTAINER_PREFIX + childType.name());
|
||||||
if (childContainer == null) {
|
if (childContainer == null) {
|
||||||
obj.addChild(childType, null);
|
obj.addChild(childType, null);
|
||||||
} else {
|
} else {
|
||||||
|
@ -201,27 +201,27 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
String getPath(Element container) {
|
String getPath(Element container) {
|
||||||
String resource = container.getAttributeValue(ATTRIBUTE_RESOURCEID);
|
String resource = container.attributeValue(ATTRIBUTE_RESOURCEID);
|
||||||
if (resource == null) {
|
if (resource == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
String classname = container.getAttributeValue(ATTRIBUTE_CLASSNAME);
|
String classname = container.attributeValue(ATTRIBUTE_CLASSNAME);
|
||||||
if (classname != null) {
|
if (classname != null) {
|
||||||
String update = container.getAttributeValue(ATTRIBUTE_UPDATE);
|
String update = container.attributeValue(ATTRIBUTE_UPDATE);
|
||||||
if (update != null) {
|
if (update != null) {
|
||||||
return resource + ":" + classname + ":" + update;
|
return resource + ":" + classname + ":" + update;
|
||||||
}
|
}
|
||||||
return resource + ":" + classname;
|
return resource + ":" + classname;
|
||||||
}
|
}
|
||||||
String lookup = container.getAttributeValue(ATTRIBUTE_LOOKUP);
|
String lookup = container.attributeValue(ATTRIBUTE_LOOKUP);
|
||||||
if (lookup != null) {
|
if (lookup != null) {
|
||||||
return resource + ":" + lookup;
|
return resource + ":" + lookup;
|
||||||
}
|
}
|
||||||
String vallkp = container.getAttributeValue(ATTRIBUTE_VALIDATIONLOOKUP);
|
String vallkp = container.attributeValue(ATTRIBUTE_VALIDATIONLOOKUP);
|
||||||
if (vallkp != null) {
|
if (vallkp != null) {
|
||||||
return resource + ":" + vallkp;
|
return resource + ":" + vallkp;
|
||||||
}
|
}
|
||||||
String vale = container.getAttributeValue(ATTRIBUTE_VALIDATIONEXTERNAL);
|
String vale = container.attributeValue(ATTRIBUTE_VALIDATIONEXTERNAL);
|
||||||
if (vale != null) {
|
if (vale != null) {
|
||||||
return resource + ":" + vale;
|
return resource + ":" + vale;
|
||||||
}
|
}
|
||||||
|
@ -237,7 +237,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private Element getElement(Element parent, String type) throws MetadataException {
|
private Element getElement(Element parent, String type) throws MetadataException {
|
||||||
Element element = parent.getChild(type);
|
Element element = parent.element(type);
|
||||||
if (element == null) {
|
if (element == null) {
|
||||||
throw new MetadataException("Missing element " + type);
|
throw new MetadataException("Missing element " + type);
|
||||||
}
|
}
|
||||||
|
@ -253,7 +253,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private void setAttributes(MetaObject obj, Element el) {
|
private void setAttributes(MetaObject obj, Element el) {
|
||||||
|
|
||||||
List children = el.getChildren();
|
List children = el.elements();
|
||||||
for (int i = 0; i < children.size(); i++) {
|
for (int i = 0; i < children.size(); i++) {
|
||||||
Element child = (Element) children.get(i);
|
Element child = (Element) children.get(i);
|
||||||
String name = child.getName();
|
String name = child.getName();
|
||||||
|
@ -269,7 +269,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
//when atrributes from the xml element are needed
|
//when atrributes from the xml element are needed
|
||||||
public void setAttributesFromXMLAttr(MetaObject obj, Element el) {
|
public void setAttributesFromXMLAttr(MetaObject obj, Element el) {
|
||||||
|
|
||||||
Iterator attrIter = el.getParentElement().getAttributes().iterator();
|
Iterator attrIter = el.getParent().attributes().iterator();
|
||||||
|
|
||||||
while(attrIter.hasNext()){
|
while(attrIter.hasNext()){
|
||||||
Attribute attr = (Attribute) attrIter.next();
|
Attribute attr = (Attribute) attrIter.next();
|
||||||
|
@ -293,20 +293,20 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private MSystem processSystem(Element container) {
|
private MSystem processSystem(Element container) {
|
||||||
Element element = container.getChild(ELEMENT_SYSTEM);
|
Element element = container.element(ELEMENT_SYSTEM);
|
||||||
if (element == null){
|
if (element == null){
|
||||||
element = container.getChild(ELEMENT_SYSTEM.toUpperCase());
|
element = container.element(ELEMENT_SYSTEM.toUpperCase());
|
||||||
}
|
}
|
||||||
MSystem system = buildSystem();
|
MSystem system = buildSystem();
|
||||||
init(system);
|
init(system);
|
||||||
setAttributesFromXMLAttr(system, element);
|
setAttributesFromXMLAttr(system, element);
|
||||||
setAttributes(system, element);
|
setAttributes(system, element);
|
||||||
Element child;
|
Element child;
|
||||||
child = element.getChild(CONTAINER_RESOURCE);
|
child = element.element(CONTAINER_RESOURCE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processResource(system, child);
|
processResource(system, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_FOREIGNKEY);
|
child = element.element(CONTAINER_FOREIGNKEY);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processForeignKey(system, child);
|
processForeignKey(system, child);
|
||||||
}
|
}
|
||||||
|
@ -314,7 +314,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processResource(MSystem system, Element container) {
|
private void processResource(MSystem system, Element container) {
|
||||||
List resources = container.getChildren(ELEMENT_RESOURCE);
|
List resources = container.elements(ELEMENT_RESOURCE);
|
||||||
for (int i = 0; i < resources.size(); i++) {
|
for (int i = 0; i < resources.size(); i++) {
|
||||||
Element element = (Element) resources.get(i);
|
Element element = (Element) resources.get(i);
|
||||||
MResource resource = buildResource();
|
MResource resource = buildResource();
|
||||||
|
@ -322,39 +322,39 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
setAttributes(resource, element);
|
setAttributes(resource, element);
|
||||||
system.addChild(MetadataType.RESOURCE, resource);
|
system.addChild(MetadataType.RESOURCE, resource);
|
||||||
Element child;
|
Element child;
|
||||||
child = element.getChild(CONTAINER_CLASS);
|
child = element.element(CONTAINER_CLASS);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processClass(resource, child);
|
processClass(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_OBJECT);
|
child = element.element(CONTAINER_OBJECT);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processObject(resource, child);
|
processObject(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_SEARCH_HELP);
|
child = element.element(CONTAINER_SEARCH_HELP);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processSearchHelp(resource, child);
|
processSearchHelp(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_EDITMASK);
|
child = element.element(CONTAINER_EDITMASK);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processEditMask(resource, child);
|
processEditMask(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_LOOKUP);
|
child = element.element(CONTAINER_LOOKUP);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processLookup(resource, child);
|
processLookup(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_UPDATEHELP);
|
child = element.element(CONTAINER_UPDATEHELP);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processUpdateHelp(resource, child);
|
processUpdateHelp(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_VALIDATIONLOOKUP);
|
child = element.element(CONTAINER_VALIDATIONLOOKUP);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processValidationLookup(resource, child);
|
processValidationLookup(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_VALIDATIONEXPRESSION);
|
child = element.element(CONTAINER_VALIDATIONEXPRESSION);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processValidationExpression(resource, child);
|
processValidationExpression(resource, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_VALIDATIONEXTERNAL);
|
child = element.element(CONTAINER_VALIDATIONEXTERNAL);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processValidationExternal(resource, child);
|
processValidationExternal(resource, child);
|
||||||
}
|
}
|
||||||
|
@ -362,7 +362,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processEditMask(MResource parent, Element container) {
|
private void processEditMask(MResource parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_EDITMASK);
|
List elements = container.elements(ELEMENT_EDITMASK);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MEditMask mask = buildEditMask();
|
MEditMask mask = buildEditMask();
|
||||||
|
@ -372,8 +372,8 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processLookup(MResource parent, Element container) {
|
private void processLookup(MResource parent, Element container) {
|
||||||
List elements15 = container.getChildren(ELEMENT_LOOKUP);
|
List elements15 = container.elements(ELEMENT_LOOKUP);
|
||||||
List elements17 = container.getChildren(ELEMENT_LOOKUPTYPE);
|
List elements17 = container.elements(ELEMENT_LOOKUPTYPE);
|
||||||
List elements;
|
List elements;
|
||||||
//some Rets Servers have lookuptype and lookup elements interchanged
|
//some Rets Servers have lookuptype and lookup elements interchanged
|
||||||
if (elements15.isEmpty()){
|
if (elements15.isEmpty()){
|
||||||
|
@ -387,7 +387,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
init(lookup);
|
init(lookup);
|
||||||
setAttributes(lookup, element);
|
setAttributes(lookup, element);
|
||||||
parent.addChild(MetadataType.LOOKUP, lookup);
|
parent.addChild(MetadataType.LOOKUP, lookup);
|
||||||
Element child = element.getChild(CONTAINER_LOOKUPTYPE);
|
Element child = element.element(CONTAINER_LOOKUPTYPE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processLookupType(lookup, child);
|
processLookupType(lookup, child);
|
||||||
}
|
}
|
||||||
|
@ -396,8 +396,8 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
|
|
||||||
private void processLookupType(MLookup parent, Element container) {
|
private void processLookupType(MLookup parent, Element container) {
|
||||||
|
|
||||||
List elements15 = container.getChildren(ELEMENT_LOOKUPTYPE);// check spec
|
List elements15 = container.elements(ELEMENT_LOOKUPTYPE);// check spec
|
||||||
List elements17 = container.getChildren(ELEMENT_LOOKUP);
|
List elements17 = container.elements(ELEMENT_LOOKUP);
|
||||||
List elements;
|
List elements;
|
||||||
//some Rets Servers have lookuptype and lookup elements interchanged
|
//some Rets Servers have lookuptype and lookup elements interchanged
|
||||||
if (elements15.isEmpty()){
|
if (elements15.isEmpty()){
|
||||||
|
@ -414,7 +414,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processUpdateHelp(MResource parent, Element container) {
|
private void processUpdateHelp(MResource parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_UPDATEHELP);
|
List elements = container.elements(ELEMENT_UPDATEHELP);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MUpdateHelp help = buildUpdateHelp();
|
MUpdateHelp help = buildUpdateHelp();
|
||||||
|
@ -424,14 +424,14 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processValidationLookup(MResource parent, Element container) {
|
private void processValidationLookup(MResource parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_VALIDATIONLOOKUP);
|
List elements = container.elements(ELEMENT_VALIDATIONLOOKUP);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MValidationLookup lookup = buildValidationLookup();
|
MValidationLookup lookup = buildValidationLookup();
|
||||||
init(lookup);
|
init(lookup);
|
||||||
setAttributes(lookup, element);
|
setAttributes(lookup, element);
|
||||||
parent.addChild(MetadataType.VALIDATION_LOOKUP, lookup);
|
parent.addChild(MetadataType.VALIDATION_LOOKUP, lookup);
|
||||||
Element child = element.getChild(CONTAINER_VALIDATIONLOOKUPTYPE);
|
Element child = element.element(CONTAINER_VALIDATIONLOOKUPTYPE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processValidationLookupType(lookup, child);
|
processValidationLookupType(lookup, child);
|
||||||
}
|
}
|
||||||
|
@ -439,7 +439,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processValidationLookupType(MValidationLookup parent, Element container) {
|
private void processValidationLookupType(MValidationLookup parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_VALIDATIONLOOKUPTYPE);
|
List elements = container.elements(ELEMENT_VALIDATIONLOOKUPTYPE);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MValidationLookupType lookupType = buildValidationLookupType();
|
MValidationLookupType lookupType = buildValidationLookupType();
|
||||||
|
@ -449,7 +449,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processValidationExpression(MResource parent, Element container) {
|
private void processValidationExpression(MResource parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_VALIDATIONEXPRESSION);
|
List elements = container.elements(ELEMENT_VALIDATIONEXPRESSION);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MValidationExpression expression = buildValidationExpression();
|
MValidationExpression expression = buildValidationExpression();
|
||||||
|
@ -459,14 +459,14 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processValidationExternal(MResource parent, Element container) {
|
private void processValidationExternal(MResource parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_VALIDATIONEXTERNAL);
|
List elements = container.elements(ELEMENT_VALIDATIONEXTERNAL);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MValidationExternal external = buildValidationExternal();
|
MValidationExternal external = buildValidationExternal();
|
||||||
init(external);
|
init(external);
|
||||||
setAttributes(external, element);
|
setAttributes(external, element);
|
||||||
parent.addChild(MetadataType.VALIDATION_EXTERNAL, external);
|
parent.addChild(MetadataType.VALIDATION_EXTERNAL, external);
|
||||||
Element child = element.getChild(CONTAINER_VALIDATIONEXTERNALTYPE);
|
Element child = element.element(CONTAINER_VALIDATIONEXTERNALTYPE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processValidationExternalType(external, child);
|
processValidationExternalType(external, child);
|
||||||
}
|
}
|
||||||
|
@ -474,7 +474,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processValidationExternalType(MValidationExternal parent, Element container) {
|
private void processValidationExternalType(MValidationExternal parent, Element container) {
|
||||||
List elements = container.getChildren(ELEMENT_VALIDATIONEXTERNALTYPE);
|
List elements = container.elements(ELEMENT_VALIDATIONEXTERNALTYPE);
|
||||||
for (int i = 0; i < elements.size(); i++) {
|
for (int i = 0; i < elements.size(); i++) {
|
||||||
Element element = (Element) elements.get(i);
|
Element element = (Element) elements.get(i);
|
||||||
MValidationExternalType type = buildValidationExternalType();
|
MValidationExternalType type = buildValidationExternalType();
|
||||||
|
@ -484,7 +484,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processSearchHelp(MResource parent, Element container) {
|
private void processSearchHelp(MResource parent, Element container) {
|
||||||
List searchhelps = container.getChildren(ELEMENT_SEARCHHELP);
|
List searchhelps = container.elements(ELEMENT_SEARCHHELP);
|
||||||
for (int i = 0; i < searchhelps.size(); i++) {
|
for (int i = 0; i < searchhelps.size(); i++) {
|
||||||
Element element = (Element) searchhelps.get(i);
|
Element element = (Element) searchhelps.get(i);
|
||||||
MSearchHelp searchhelp = buildSearchHelp();
|
MSearchHelp searchhelp = buildSearchHelp();
|
||||||
|
@ -494,7 +494,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processObject(MResource parent, Element container) {
|
private void processObject(MResource parent, Element container) {
|
||||||
List objects = container.getChildren(ELEMENT_OBJECT);
|
List objects = container.elements(ELEMENT_OBJECT);
|
||||||
for (int i = 0; i < objects.size(); i++) {
|
for (int i = 0; i < objects.size(); i++) {
|
||||||
Element element = (Element) objects.get(i);
|
Element element = (Element) objects.get(i);
|
||||||
MObject obj = buildObject();
|
MObject obj = buildObject();
|
||||||
|
@ -504,7 +504,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processClass(MResource parent, Element container) {
|
private void processClass(MResource parent, Element container) {
|
||||||
List classes = container.getChildren(ELEMENT_CLASS);
|
List classes = container.elements(ELEMENT_CLASS);
|
||||||
for (int i = 0; i < classes.size(); i++) {
|
for (int i = 0; i < classes.size(); i++) {
|
||||||
Element element = (Element) classes.get(i);
|
Element element = (Element) classes.get(i);
|
||||||
MClass clazz = buildClass();
|
MClass clazz = buildClass();
|
||||||
|
@ -512,11 +512,11 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
setAttributes(clazz, element);
|
setAttributes(clazz, element);
|
||||||
parent.addChild(MetadataType.CLASS, clazz);
|
parent.addChild(MetadataType.CLASS, clazz);
|
||||||
Element child;
|
Element child;
|
||||||
child = element.getChild(CONTAINER_TABLE);
|
child = element.element(CONTAINER_TABLE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processTable(clazz, child);
|
processTable(clazz, child);
|
||||||
}
|
}
|
||||||
child = element.getChild(CONTAINER_UPDATE);
|
child = element.element(CONTAINER_UPDATE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processUpdate(clazz, child);
|
processUpdate(clazz, child);
|
||||||
}
|
}
|
||||||
|
@ -524,7 +524,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processTable(MClass parent, Element container) {
|
private void processTable(MClass parent, Element container) {
|
||||||
List tables = container.getChildren(ELEMENT_TABLE);
|
List tables = container.elements(ELEMENT_TABLE);
|
||||||
for (int i = 0; i < tables.size(); i++) {
|
for (int i = 0; i < tables.size(); i++) {
|
||||||
Element element = (Element) tables.get(i);
|
Element element = (Element) tables.get(i);
|
||||||
MTable table = buildTable();
|
MTable table = buildTable();
|
||||||
|
@ -534,14 +534,14 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processUpdate(MClass parent, Element container) {
|
private void processUpdate(MClass parent, Element container) {
|
||||||
List updates = container.getChildren(ELEMENT_UPDATE);
|
List updates = container.elements(ELEMENT_UPDATE);
|
||||||
for (int i = 0; i < updates.size(); i++) {
|
for (int i = 0; i < updates.size(); i++) {
|
||||||
Element element = (Element) updates.get(i);
|
Element element = (Element) updates.get(i);
|
||||||
MUpdate update = buildUpdate();
|
MUpdate update = buildUpdate();
|
||||||
init(update);
|
init(update);
|
||||||
setAttributes(update, element);
|
setAttributes(update, element);
|
||||||
parent.addChild(MetadataType.UPDATE, update);
|
parent.addChild(MetadataType.UPDATE, update);
|
||||||
Element child = element.getChild(CONTAINER_UPDATE_TYPE);
|
Element child = element.element(CONTAINER_UPDATE_TYPE);
|
||||||
if (child != null) {
|
if (child != null) {
|
||||||
processUpdateType(update, child);
|
processUpdateType(update, child);
|
||||||
}
|
}
|
||||||
|
@ -549,7 +549,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processUpdateType(MUpdate parent, Element container) {
|
private void processUpdateType(MUpdate parent, Element container) {
|
||||||
List updateFields = container.getChildren(ELEMENT_UPDATETYPE);
|
List updateFields = container.elements(ELEMENT_UPDATETYPE);
|
||||||
for (int i = 0; i < updateFields.size(); i++) {
|
for (int i = 0; i < updateFields.size(); i++) {
|
||||||
Element element = (Element) updateFields.get(i);
|
Element element = (Element) updateFields.get(i);
|
||||||
MUpdateType updateType = buildUpdateType();
|
MUpdateType updateType = buildUpdateType();
|
||||||
|
@ -559,7 +559,7 @@ public class JDomStandardBuilder extends MetadataBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processForeignKey(MSystem system, Element container) {
|
private void processForeignKey(MSystem system, Element container) {
|
||||||
List fkeys = container.getChildren("ForeignKey");
|
List fkeys = container.elements("ForeignKey");
|
||||||
for (int i = 0; i < fkeys.size(); i++) {
|
for (int i = 0; i < fkeys.size(); i++) {
|
||||||
Element element = (Element) fkeys.get(i);
|
Element element = (Element) fkeys.get(i);
|
||||||
MForeignKey foreignKey = buildForeignKey();
|
MForeignKey foreignKey = buildForeignKey();
|
||||||
|
|
Loading…
Reference in New Issue