@Override public List<EdmExpression> getItems() { if (items == null) { List<EdmExpression> localItems = new ArrayList<EdmExpression>(); if (csdlCollection.getItems() != null) { for (CsdlExpression item : csdlCollection.getItems()) { localItems.add(getExpression(edm, item)); } } items = Collections.unmodifiableList(localItems); } return items; }
@Override public boolean equals (Object obj) { if (obj == null) { return false; } if (!(obj instanceof CsdlCollection)) { return false; } CsdlCollection annotColl = (CsdlCollection) obj; return (this.getItems() == null ? annotColl.getItems() == null : checkItems(annotColl.getItems())); }
private static void addStringCollectionAnnotation(CsdlAnnotatable recipent, String term, List<String> values) { CsdlAnnotation annotation = new CsdlAnnotation(); annotation.setTerm(term); CsdlCollection collection = new CsdlCollection(); for (String value:values) { collection.getItems().add(new CsdlConstantExpression(ConstantExpressionType.String, value)); } annotation.setExpression(collection); recipent.getAnnotations().add(annotation); }
CsdlCollection expr = new CsdlCollection(); readExpressions(reader, element, expr); write(target, expr);
CsdlCollection expr = new CsdlCollection(); readExpressions(reader, element, expr); write(target, expr);
@Override public List<EdmExpression> getItems() { if (items == null) { List<EdmExpression> localItems = new ArrayList<EdmExpression>(); if (csdlCollection.getItems() != null) { for (CsdlExpression item : csdlCollection.getItems()) { localItems.add(getExpression(edm, item)); } } items = Collections.unmodifiableList(localItems); } return items; }
private boolean checkItems(List<CsdlExpression> annotCollItems) { if (annotCollItems == null) { return false; } if (this.getItems().size() == annotCollItems.size()) { for (int i = 0; i < this.getItems().size(); i++) { if (!this.getItems().get(i).equals(annotCollItems.get(i))) { return false; } } } else { return false; } return true; }
private <T> void write(T t, CsdlExpression expr) throws XMLStreamException { if(t instanceof CsdlAnnotation) { ((CsdlAnnotation)t).setExpression(expr); } else if (t instanceof CsdlUrlRef) { ((CsdlUrlRef)t).setValue(expr); } else if (t instanceof CsdlCast) { ((CsdlCast)t).setValue(expr); } else if (t instanceof CsdlLabeledElement) { ((CsdlLabeledElement)t).setValue(expr); } else if (t instanceof CsdlIsOf) { ((CsdlIsOf)t).setValue(expr); } else if (t instanceof CsdlCollection) { ((CsdlCollection)t).getItems().add(((CsdlCollection)t).getItems().size(), expr); } else if (t instanceof CsdlApply) { ((CsdlApply)t).getParameters().add(expr); } else if (t instanceof CsdlIf) { if (((CsdlIf)t).getGuard() == null) { ((CsdlIf)t).setGuard(expr); } else if (((CsdlIf)t).getThen() == null) { ((CsdlIf)t).setThen(expr); } else { ((CsdlIf)t).setElse(expr); } } else if (t instanceof CsdlPropertyValue) { ((CsdlPropertyValue)t).setValue(expr); } else { throw new XMLStreamException("Unknown expression parent in Annoatation"); } }
private <T> void write(T t, CsdlExpression expr) throws XMLStreamException { if(t instanceof CsdlAnnotation) { ((CsdlAnnotation)t).setExpression(expr); } else if (t instanceof CsdlUrlRef) { ((CsdlUrlRef)t).setValue(expr); } else if (t instanceof CsdlCast) { ((CsdlCast)t).setValue(expr); } else if (t instanceof CsdlLabeledElement) { ((CsdlLabeledElement)t).setValue(expr); } else if (t instanceof CsdlIsOf) { ((CsdlIsOf)t).setValue(expr); } else if (t instanceof CsdlCollection) { ((CsdlCollection)t).getItems().add(((CsdlCollection)t).getItems().size(), expr); } else if (t instanceof CsdlApply) { ((CsdlApply)t).getParameters().add(expr); } else if (t instanceof CsdlIf) { if (((CsdlIf)t).getGuard() == null) { ((CsdlIf)t).setGuard(expr); } else if (((CsdlIf)t).getThen() == null) { ((CsdlIf)t).setThen(expr); } else { ((CsdlIf)t).setElse(expr); } } else if (t instanceof CsdlPropertyValue) { ((CsdlPropertyValue)t).setValue(expr); } else { throw new XMLStreamException("Unknown expression parent in Annoatation"); } }
}).flatMap(csdlAnnotation -> { List<CsdlExpression> items = csdlAnnotation.getExpression().asDynamic().asCollection() .getItems(); if (items != null && !items.isEmpty()) return items.stream();