private boolean isNumericKey(KeyedObject obj) { try { Integer.parseInt(obj.getKey().getValue().toString()); return true; } catch (Exception ex) { return false; } } }
Object bindPrimitiveBlock(PrimitiveObjectBlock block) throws DADLBindingException { if (block.getSimpleValue() != null) { return block.getSimpleValue().getValue(); } else if (block.getSimpleListValue() != null) { List<SimpleValue> values = block.getSimpleListValue(); List list = new ArrayList(values.size()); for (SimpleValue sv : values) { list.add(sv.getValue()); } return list; } else if (block.getSimpleIntervalValue() != null) { return null; } else if (block.getTermCode() != null) { return block.getTermCode(); } else if (block.getTermCodeListValue() != null) { return block.getTermCodeListValue(); } else { throw new DADLBindingException("empty block"); } }
Object bindPrimitiveBlock(PrimitiveObjectBlock block) throws DADLBindingException { if (block.getSimpleValue() != null) { return block.getSimpleValue().getValue(); } else if (block.getSimpleListValue() != null) { List<SimpleValue> values = block.getSimpleListValue(); List list = new ArrayList(values.size()); for (SimpleValue sv : values) { list.add(sv.getValue()); } return list; } else if (block.getSimpleIntervalValue() != null) { return null; } else if (block.getTermCode() != null) { return block.getTermCode(); } else if (block.getTermCodeListValue() != null) { return block.getTermCodeListValue(); } else { throw new DADLBindingException("empty block"); } }
Object bindComplexBlock(ComplexObjectBlock block) throws DADLBindingException, RMObjectBuildingException { if (block instanceof SingleAttributeObjectBlock) { SingleAttributeObjectBlock singleBlock = (SingleAttributeObjectBlock) block; // a special case to deal with empty attribute list if("LIST".equalsIgnoreCase(singleBlock.getTypeIdentifier()) && singleBlock.getAttributeValues().isEmpty()) { return new ArrayList(); } return bindAttributes(singleBlock.getTypeIdentifier(), singleBlock .getAttributeValues()); } else { MultipleAttributeObjectBlock multiBlock = (MultipleAttributeObjectBlock) block; List<KeyedObject> list = multiBlock.getKeyObjects(); // TODO assume list? List<Object> valueList = new ArrayList<Object>(); for(KeyedObject ko : list) { Object key = ko.getKey().getValue(); Object value = bindObjectBlock(ko.getObject()); valueList.add(value); } return valueList; } }
private Object bindPrimitiveBlock(PrimitiveObjectBlock block) throws BindingException { if (block.getSimpleValue() != null) { return block.getSimpleValue().getValue(); } else if (block.getSimpleListValue() != null) { List<SimpleValue> values = block.getSimpleListValue(); List list = new ArrayList(values.size()); for (SimpleValue sv : values) { list.add(sv.getValue()); } return list; } else if (block.getSimpleIntervalValue() != null) { // TODO return null; } else if (block.getTermCode() != null) { return block.getTermCode(); } else if (block.getTermCodeListValue() != null) { return block.getTermCodeListValue(); } else { throw new BindingException("empty block"); } }
Object bindComplexBlock(ComplexObjectBlock block) throws DADLBindingException, RMObjectBuildingException { if (block instanceof SingleAttributeObjectBlock) { SingleAttributeObjectBlock singleBlock = (SingleAttributeObjectBlock) block; // a special case to deal with empty attribute list if("LIST".equalsIgnoreCase(singleBlock.getTypeIdentifier()) && singleBlock.getAttributeValues().isEmpty()) { return new ArrayList(); } return bindAttributes(singleBlock.getTypeIdentifier(), singleBlock .getAttributeValues()); } else { MultipleAttributeObjectBlock multiBlock = (MultipleAttributeObjectBlock) block; List<KeyedObject> list = multiBlock.getKeyObjects(); // TODO assume list? List<Object> valueList = new ArrayList<Object>(); for(KeyedObject ko : list) { Object key = ko.getKey().getValue(); Object value = bindObjectBlock(ko.getObject()); valueList.add(value); } return valueList; } }
Map map = new HashMap(); for (KeyedObject ko : list) { Object key = ko.getKey().getValue(); Object value = bindObjectBlock(ko.getObject());