[Minor] Added missing writing of Parameter attributes
This commit is contained in:
parent
c24e01cdc8
commit
5cb0982b2f
|
@ -38,6 +38,7 @@ public class OrderToSaxWriterVisitor extends AbstractToSaxWriterVisitor implemen
|
||||||
public void visit(Order order) {
|
public void visit(Order order) {
|
||||||
try {
|
try {
|
||||||
writeElement(Tags.ORDER, order);
|
writeElement(Tags.ORDER, order);
|
||||||
|
this.writer.flush();
|
||||||
} catch (XMLStreamException e) {
|
} catch (XMLStreamException e) {
|
||||||
String msg = "Failed to write Order {0} due to {1}"; //$NON-NLS-1$
|
String msg = "Failed to write Order {0} due to {1}"; //$NON-NLS-1$
|
||||||
msg = MessageFormat.format(msg, order.getLocator(), e.getMessage());
|
msg = MessageFormat.format(msg, order.getLocator(), e.getMessage());
|
||||||
|
|
|
@ -38,6 +38,7 @@ public class ResourceToSaxWriterVisitor extends AbstractToSaxWriterVisitor imple
|
||||||
public void visit(Resource resource) {
|
public void visit(Resource resource) {
|
||||||
try {
|
try {
|
||||||
writeElement(Tags.RESOURCE, resource);
|
writeElement(Tags.RESOURCE, resource);
|
||||||
|
this.writer.flush();
|
||||||
} catch (XMLStreamException e) {
|
} catch (XMLStreamException e) {
|
||||||
String msg = "Failed to write Resource {0} due to {1}"; //$NON-NLS-1$
|
String msg = "Failed to write Resource {0} due to {1}"; //$NON-NLS-1$
|
||||||
msg = MessageFormat.format(msg, resource.getLocator(), e.getMessage());
|
msg = MessageFormat.format(msg, resource.getLocator(), e.getMessage());
|
||||||
|
|
|
@ -76,98 +76,98 @@ public class XmlModelSaxReader extends DefaultHandler {
|
||||||
// TODO split each root object into its own file
|
// TODO split each root object into its own file
|
||||||
switch (qName) {
|
switch (qName) {
|
||||||
|
|
||||||
case Tags.STROLCH_MODEL:
|
case Tags.STROLCH_MODEL:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tags.RESOURCE:
|
case Tags.RESOURCE:
|
||||||
|
|
||||||
String resId = attributes.getValue(Tags.ID);
|
String resId = attributes.getValue(Tags.ID);
|
||||||
String resName = attributes.getValue(Tags.NAME);
|
String resName = attributes.getValue(Tags.NAME);
|
||||||
String resType = attributes.getValue(Tags.TYPE);
|
String resType = attributes.getValue(Tags.TYPE);
|
||||||
Resource resource = new Resource(resId, resName, resType);
|
Resource resource = new Resource(resId, resName, resType);
|
||||||
this.parameterizedElement = resource;
|
this.parameterizedElement = resource;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tags.ORDER:
|
case Tags.ORDER:
|
||||||
String orderId = attributes.getValue(Tags.ID);
|
String orderId = attributes.getValue(Tags.ID);
|
||||||
String orderName = attributes.getValue(Tags.NAME);
|
String orderName = attributes.getValue(Tags.NAME);
|
||||||
String orderType = attributes.getValue(Tags.TYPE);
|
String orderType = attributes.getValue(Tags.TYPE);
|
||||||
String orderDateS = attributes.getValue(Tags.DATE);
|
String orderDateS = attributes.getValue(Tags.DATE);
|
||||||
String orderStateS = attributes.getValue(Tags.STATE);
|
String orderStateS = attributes.getValue(Tags.STATE);
|
||||||
Order order = new Order(orderId, orderName, orderType);
|
Order order = new Order(orderId, orderName, orderType);
|
||||||
if (orderDateS != null) {
|
if (orderDateS != null) {
|
||||||
Date orderDate = ISO8601FormatFactory.getInstance().getDateFormat().parse(orderDateS);
|
Date orderDate = ISO8601FormatFactory.getInstance().getDateFormat().parse(orderDateS);
|
||||||
order.setDate(orderDate);
|
order.setDate(orderDate);
|
||||||
|
}
|
||||||
|
if (orderStateS != null) {
|
||||||
|
State orderState = State.valueOf(orderStateS);
|
||||||
|
order.setState(orderState);
|
||||||
|
}
|
||||||
|
this.parameterizedElement = order;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case Tags.PARAMETER_BAG:
|
||||||
|
String pBagId = attributes.getValue(Tags.ID);
|
||||||
|
String pBagName = attributes.getValue(Tags.NAME);
|
||||||
|
String pBagType = attributes.getValue(Tags.TYPE);
|
||||||
|
ParameterBag pBag = new ParameterBag(pBagId, pBagName, pBagType);
|
||||||
|
this.pBag = pBag;
|
||||||
|
this.parameterizedElement.addParameterBag(pBag);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case Tags.PARAMETER:
|
||||||
|
String paramId = attributes.getValue(Tags.ID);
|
||||||
|
String paramName = attributes.getValue(Tags.NAME);
|
||||||
|
String paramType = attributes.getValue(Tags.TYPE);
|
||||||
|
String paramValue = attributes.getValue(Tags.VALUE);
|
||||||
|
String paramHiddenS = attributes.getValue(Tags.HIDDEN);
|
||||||
|
String paramIndexS = attributes.getValue(Tags.INDEX);
|
||||||
|
try {
|
||||||
|
int index = StringHelper.isEmpty(paramIndexS) ? 0 : Integer.valueOf(paramIndexS);
|
||||||
|
boolean paramHidden = StringHelper.isEmpty(paramHiddenS) ? false : StringHelper
|
||||||
|
.parseBoolean(paramHiddenS);
|
||||||
|
String paramUom = attributes.getValue(Tags.UOM);
|
||||||
|
String paramInterpretation = attributes.getValue(Tags.INTERPRETATION);
|
||||||
|
Parameter<?> param;
|
||||||
|
switch (paramType) {
|
||||||
|
case StringParameter.TYPE:
|
||||||
|
param = new StringParameter(paramId, paramName, paramValue);
|
||||||
|
break;
|
||||||
|
case IntegerParameter.TYPE:
|
||||||
|
param = new IntegerParameter(paramId, paramName, IntegerParameter.parseFromString(paramValue));
|
||||||
|
break;
|
||||||
|
case BooleanParameter.TYPE:
|
||||||
|
param = new BooleanParameter(paramId, paramName, BooleanParameter.parseFromString(paramValue));
|
||||||
|
break;
|
||||||
|
case LongParameter.TYPE:
|
||||||
|
param = new LongParameter(paramId, paramName, LongParameter.parseFromString(paramValue));
|
||||||
|
break;
|
||||||
|
case DateParameter.TYPE:
|
||||||
|
param = new DateParameter(paramId, paramName, DateParameter.parseFromString(paramValue));
|
||||||
|
break;
|
||||||
|
case StringListParameter.TYPE:
|
||||||
|
param = new StringListParameter(paramId, paramName, StringListParameter.parseFromString(paramValue));
|
||||||
|
break;
|
||||||
|
case FloatParameter.TYPE:
|
||||||
|
param = new FloatParameter(paramId, paramName, FloatParameter.parseFromString(paramValue));
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw new UnsupportedOperationException(MessageFormat.format(
|
||||||
|
"Parameters of type {0} are not supported!", paramType)); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
if (orderStateS != null) {
|
param.setHidden(paramHidden);
|
||||||
State orderState = State.valueOf(orderStateS);
|
param.setUom(paramUom);
|
||||||
order.setState(orderState);
|
param.setInterpretation(paramInterpretation);
|
||||||
}
|
param.setIndex(index);
|
||||||
this.parameterizedElement = order;
|
this.pBag.addParameter(param);
|
||||||
break;
|
} catch (Exception e) {
|
||||||
|
throw new StrolchException("Failed to instantiate parameter " + paramId + " for bag "
|
||||||
|
+ this.pBag.getLocator() + " due to " + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case Tags.PARAMETER_BAG:
|
default:
|
||||||
String pBagId = attributes.getValue(Tags.ID);
|
throw new IllegalArgumentException(MessageFormat.format("The element ''{0}'' is unhandled!", qName)); //$NON-NLS-1$
|
||||||
String pBagName = attributes.getValue(Tags.NAME);
|
|
||||||
String pBagType = attributes.getValue(Tags.TYPE);
|
|
||||||
ParameterBag pBag = new ParameterBag(pBagId, pBagName, pBagType);
|
|
||||||
this.pBag = pBag;
|
|
||||||
this.parameterizedElement.addParameterBag(pBag);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case Tags.PARAMETER:
|
|
||||||
String paramId = attributes.getValue(Tags.ID);
|
|
||||||
String paramName = attributes.getValue(Tags.NAME);
|
|
||||||
String paramType = attributes.getValue(Tags.TYPE);
|
|
||||||
String paramValue = attributes.getValue(Tags.VALUE);
|
|
||||||
String paramHiddenS = attributes.getValue(Tags.HIDDEN);
|
|
||||||
String paramIndexS = attributes.getValue(Tags.INDEX);
|
|
||||||
try {
|
|
||||||
int index = StringHelper.isEmpty(paramIndexS) ? 0 : Integer.valueOf(paramIndexS);
|
|
||||||
boolean paramHidden = StringHelper.isEmpty(paramHiddenS) ? false : StringHelper
|
|
||||||
.parseBoolean(paramHiddenS);
|
|
||||||
String paramUom = attributes.getValue(Tags.UOM);
|
|
||||||
String paramInterpretation = attributes.getValue(Tags.INTERPRETATION);
|
|
||||||
Parameter<?> param;
|
|
||||||
switch (paramType) {
|
|
||||||
case StringParameter.TYPE:
|
|
||||||
param = new StringParameter(paramId, paramName, paramValue);
|
|
||||||
break;
|
|
||||||
case IntegerParameter.TYPE:
|
|
||||||
param = new IntegerParameter(paramId, paramName, IntegerParameter.parseFromString(paramValue));
|
|
||||||
break;
|
|
||||||
case BooleanParameter.TYPE:
|
|
||||||
param = new BooleanParameter(paramId, paramName, BooleanParameter.parseFromString(paramValue));
|
|
||||||
break;
|
|
||||||
case LongParameter.TYPE:
|
|
||||||
param = new LongParameter(paramId, paramName, LongParameter.parseFromString(paramValue));
|
|
||||||
break;
|
|
||||||
case DateParameter.TYPE:
|
|
||||||
param = new DateParameter(paramId, paramName, DateParameter.parseFromString(paramValue));
|
|
||||||
break;
|
|
||||||
case StringListParameter.TYPE:
|
|
||||||
param = new StringListParameter(paramId, paramName, StringListParameter.parseFromString(paramValue));
|
|
||||||
break;
|
|
||||||
case FloatParameter.TYPE:
|
|
||||||
param = new FloatParameter(paramId, paramName, FloatParameter.parseFromString(paramValue));
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new UnsupportedOperationException(MessageFormat.format(
|
|
||||||
"Parameters of type {0} are not supported!", paramType)); //$NON-NLS-1$
|
|
||||||
}
|
|
||||||
param.setHidden(paramHidden);
|
|
||||||
param.setUom(paramUom);
|
|
||||||
param.setInterpretation(paramInterpretation);
|
|
||||||
param.setIndex(index);
|
|
||||||
this.pBag.addParameter(param);
|
|
||||||
} catch (Exception e) {
|
|
||||||
throw new StrolchException("Failed to instantiate parameter " + paramId + " for bag "
|
|
||||||
+ this.pBag.getLocator() + " due to " + e.getMessage(), e);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
throw new IllegalArgumentException(MessageFormat.format("The element ''{0}'' is unhandled!", qName)); //$NON-NLS-1$
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -175,27 +175,27 @@ public class XmlModelSaxReader extends DefaultHandler {
|
||||||
public void endElement(String uri, String localName, String qName) throws SAXException {
|
public void endElement(String uri, String localName, String qName) throws SAXException {
|
||||||
|
|
||||||
switch (qName) {
|
switch (qName) {
|
||||||
case Tags.STROLCH_MODEL:
|
case Tags.STROLCH_MODEL:
|
||||||
break;
|
break;
|
||||||
case Tags.RESOURCE:
|
case Tags.RESOURCE:
|
||||||
this.listener.notifyResource((Resource) this.parameterizedElement);
|
this.listener.notifyResource((Resource) this.parameterizedElement);
|
||||||
this.statistics.nrOfResources++;
|
this.statistics.nrOfResources++;
|
||||||
this.parameterizedElement = null;
|
this.parameterizedElement = null;
|
||||||
break;
|
break;
|
||||||
case Tags.ORDER:
|
case Tags.ORDER:
|
||||||
this.listener.notifyOrder((Order) this.parameterizedElement);
|
this.listener.notifyOrder((Order) this.parameterizedElement);
|
||||||
this.statistics.nrOfOrders++;
|
this.statistics.nrOfOrders++;
|
||||||
this.parameterizedElement = null;
|
this.parameterizedElement = null;
|
||||||
break;
|
break;
|
||||||
case Tags.PARAMETER_BAG:
|
case Tags.PARAMETER_BAG:
|
||||||
this.pBag = null;
|
this.pBag = null;
|
||||||
break;
|
break;
|
||||||
case Tags.PARAMETER:
|
case Tags.PARAMETER:
|
||||||
break;
|
break;
|
||||||
case Tags.INCLUDE_FILE:
|
case Tags.INCLUDE_FILE:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
throw new IllegalArgumentException(MessageFormat.format("The element ''{0}'' is unhandled!", qName)); //$NON-NLS-1$
|
throw new IllegalArgumentException(MessageFormat.format("The element ''{0}'' is unhandled!", qName)); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -206,6 +206,24 @@ public class XmlModelSaxReader extends DefaultHandler {
|
||||||
public int nrOfResources;
|
public int nrOfResources;
|
||||||
public int nrOfOrders;
|
public int nrOfOrders;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the nrOfOrders
|
||||||
|
*/
|
||||||
|
public int getNrOfOrders() {
|
||||||
|
return this.nrOfOrders;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the nrOfResources
|
||||||
|
*/
|
||||||
|
public int getNrOfResources() {
|
||||||
|
return this.nrOfResources;
|
||||||
|
}
|
||||||
|
|
||||||
|
public long getNrOfElements() {
|
||||||
|
return this.nrOfOrders + this.nrOfResources;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder builder = new StringBuilder();
|
StringBuilder builder = new StringBuilder();
|
||||||
|
|
Loading…
Reference in New Issue