Transalte a filter string such as emails[type eq "work" and value co "@example.com"] or ims[type eq "xmpp" and value co "@foo.com"] into (emails.type eq "work" and emails.value co "@example.com") or (ims.type eq "xmpp" and ims.value co "@foo.com")
162 int i= filther.indexOf(
"[");
163 StringBuilder sb=
new StringBuilder();
167 j= filther.indexOf(
"]", i);
169 throw new Exception(
"Invalid filter: closing bracket ']' expected");
171 String str= filther.substring(i+1, j);
174 throw new Exception(
"Invalid filter: no parent attrPath found before opening braket '['");
176 sb.append(filther.substring(offset, k)).append(
"(");
177 sb.append(
applyPrefix(filther.substring(k,i), str, clazz));
181 i= filther.indexOf(
"[", offset);
184 sb.append(filther.substring(offset));
185 return sb.toString();
static int startIndexParentAttr(String str)
Definition: FilterUtil.java:124
static String applyPrefix(String parent, String innerExpr, Class<? extends BaseScimResource > clazz)
Definition: FilterUtil.java:131