Skip to content

Commit

Permalink
Merge branch 'ir_cypher_label' of https://github.com/shirly121/GraphS…
Browse files Browse the repository at this point in the history
…cope into ir_cypher_label
  • Loading branch information
zhanglei1949 committed Sep 25, 2023
2 parents 31ec724 + a1650a5 commit 83a1785
Showing 1 changed file with 20 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -316,16 +316,29 @@ private String parseLabelValue(Common.Value value, GraphLabelType type) {
case STR:
return value.getStr();
case I32:
return parseLabelValue(value.getI32(), type);
case I64:
long labelId = value.getI64();
for (GraphLabelType.Entry entry : type.getLabelsEntry()) {
if (entry.getLabelId() == labelId) {
return entry.getLabel();
}
}
return parseLabelValue(value.getI64(), type);
default:
throw new IllegalArgumentException(
"cannot parse label value=" + value + " from expected type=" + type);
"cannot parse label value with type=" + value.getItemCase().name());
}
}

private String parseLabelValue(long labelId, GraphLabelType type) {
List<Object> expectedLabelIds = Lists.newArrayList();
for (GraphLabelType.Entry entry : type.getLabelsEntry()) {
if (entry.getLabelId() == labelId) {
return entry.getLabel();
}
expectedLabelIds.add(entry.getLabelId());
}
throw new IllegalArgumentException(
"cannot parse label value="
+ labelId
+ " from expected type="
+ type
+ ", expected ids are "
+ expectedLabelIds);
}
}

0 comments on commit 83a1785

Please sign in to comment.