private ArgumentListStatus listStatus(Field field, boolean isList) { if (field.hasDirective("singleton")) return ArgumentListStatus.SINGLETON; else if (isList) return ArgumentListStatus.REPEATING; else return ArgumentListStatus.NOT_SPECIFIED; }
private ArgumentListStatus listStatus(Field field, boolean isList) { if (field.hasDirective("singleton")) return ArgumentListStatus.SINGLETON; else if (isList) return ArgumentListStatus.REPEATING; else return ArgumentListStatus.NOT_SPECIFIED; }
Argument arg = null; ExpressionNode expression = null; if (sel.getField().hasDirective("slice")) { Directive dir = sel.getField().directive("slice"); String s = ((StringValue) dir.getArguments().get(0).getValues().get(0)).getValue(); expression = fpe.parse(s); if (sel.getField().hasDirective("flatten")) // special: instruction to drop this node... il = prop.isList() && !sel.getField().hasDirective("first"); else if (sel.getField().hasDirective("first")) { if (expression != null) throw new FHIRException("You cannot mix @slice and @first"); else ss = suffix+'.'+fpe.evaluateToString(null, null, value, expression); if (!sel.getField().hasDirective("flatten")) arg = target.addField(sel.getField().getAlias()+suffix, listStatus(sel.getField(), prop.isList() || inheritedList)); if (sel.getField().hasDirective("first")) return; index++;
Argument arg = null; ExpressionNode expression = null; if (sel.getField().hasDirective("slice")) { Directive dir = sel.getField().directive("slice"); String s = ((StringValue) dir.getArguments().get(0).getValues().get(0)).getValue(); expression = fpe.parse(s); if (sel.getField().hasDirective("flatten")) // special: instruction to drop this node... il = prop.isList() && !sel.getField().hasDirective("first"); else if (sel.getField().hasDirective("first")) { if (expression != null) throw new FHIRException("You cannot mix @slice and @first"); else ss = suffix+'.'+fpe.evaluateToString(null, null, value, expression); if (!sel.getField().hasDirective("flatten")) arg = target.addField(sel.getField().getAlias()+suffix, listStatus(sel.getField(), prop.isList() || inheritedList)); if (sel.getField().hasDirective("first")) return; index++;