+ Resource testResource = graph.getPossibleObject(contribution, VP.ActionBrowseContextContribution_HasTest);
+ if(testResource != null) {
+ Test test = graph.getPossibleAdapter(testResource, Test.class);
+ if(test != null) {
+ if(!test.test(graph, parameter2)) continue;
+ }
+ }
+
+ Resource context = graph.getPossibleObject(contribution, VP.ActionBrowseContextContribution_HasActionBrowseContext);
+ if(context == null) continue;
+ String[] allowedContexts = graph.getPossibleRelatedValue(contribution, VP.ActionBrowseContextContribution_allowedUIContexts, Bindings.STRING_ARRAY);
+ if(allowedContexts != null)
+ if(!Arrays.contains(allowedContexts, parameter3))
+ continue;
+ result.add(context);
+