+
+ @SCLValue(type = "ReadGraph -> Resource -> a -> [Resource]")
+ public static List<Resource> standardIssueContexts(ReadGraph graph, Resource converter, Object property) throws DatabaseException {
+ if (property instanceof Variable) {
+ return IssueUtils.getContextsForProperty(graph, (Variable) property);
+ } else if (property instanceof Resource) {
+ Resource issue = (Resource) property;
+ IssueResource ISSUE = IssueResource.getInstance(graph);
+ Resource list = graph.getPossibleObject(issue, ISSUE.Issue_HasContexts);
+ if(list != null)
+ return ListUtils.toList(graph, list);
+ else
+ return Collections.emptyList();
+ }
+ throw new IllegalArgumentException("Unsupported property type: " + property);
+ }
+
+ @SCLValue(type = "ReadGraph -> Resource -> a -> b")
+ public static Function1<Boolean, Boolean> standardIssueHider(ReadGraph graph, Resource converter, Object property) throws DatabaseException {
+ if (property instanceof Variable) {
+ Variable hider = (Variable) property;
+ Variable issue = hider.getParent(graph);
+ Resource r = issue.getPossibleRepresents(graph);
+ if (r != null)
+ return new HideFunction(r);
+ }
+ return null;
+ }
+
+ @SCLValue(type = "ReadGraph -> Resource -> a -> Boolean")
+ public static Boolean standardIssueHidden(ReadGraph graph, Resource converter, Object property) throws DatabaseException {
+ if (property instanceof Variable) {
+ Variable hidden = (Variable) property;
+ Variable issue = hidden.getParent(graph);
+ Resource r = issue.getPossibleRepresents(graph);
+ if (r != null) {
+ IssueResource ISSUE = IssueResource.getInstance(graph);
+ return graph.hasStatement(r, ISSUE.Hidden);
+ }
+ }
+ return false;
+ }
+