Skip to content

Commit a989ee9

Browse files
committed
[who-icatx/icatx-project#174]: Update use of ContextAwareCapability
1 parent 39ecc88 commit a989ee9

File tree

4 files changed

+35
-2
lines changed

4 files changed

+35
-2
lines changed

src/main/java/edu/stanford/protege/webprotege/authorization/Capability.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
@JsonSubTypes({
88
@JsonSubTypes.Type(BasicCapability.class),
99
@JsonSubTypes.Type(GenericParameterizedCapability.class),
10+
@JsonSubTypes.Type(ContextAwareCapability.class),
1011
})
1112
public interface Capability {
1213

src/main/java/edu/stanford/protege/webprotege/authorization/ContextAwareCapability.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ public record ContextAwareCapability(
1111
@JsonProperty("contextCriteria") CompositeRootCriteria contextCriteria
1212
) implements Capability {
1313

14-
public static final String CONTEXT_AWARE_CAPABILITY = "ContextAwareCapability";
14+
public final static String TYPE = "ContextAwareCapability";
1515

1616
@Override
1717
public GenericParameterizedCapability asGenericCapability() {
18-
return new GenericParameterizedCapability(CONTEXT_AWARE_CAPABILITY, id(), new HashMap<>());
18+
return new GenericParameterizedCapability(TYPE, id(), Map.of("contextCriteria", contextCriteria));
1919
}
2020
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package edu.stanford.protege.webprotege.authorization;
2+
3+
import com.fasterxml.jackson.annotation.JsonTypeName;
4+
import edu.stanford.protege.webprotege.common.*;
5+
import org.semanticweb.owlapi.model.IRI;
6+
7+
import static edu.stanford.protege.webprotege.authorization.GetAuthorizedCapabilitiesForEntityRequest.CHANNEL;
8+
9+
@JsonTypeName(CHANNEL)
10+
public record GetAuthorizedCapabilitiesForEntityRequest(ProjectId projectId, UserId userId, IRI entityIri) implements Request<GetAuthorizedCapabilitiesForEntityResponse> {
11+
12+
public static final String CHANNEL = "webprotege.authorization.GetAuthorizedCapabilitiesForEntity";
13+
14+
@Override
15+
public String getChannel() {
16+
return CHANNEL;
17+
}
18+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package edu.stanford.protege.webprotege.authorization;
2+
3+
import com.fasterxml.jackson.annotation.JsonTypeName;
4+
import com.google.common.collect.ImmutableSet;
5+
import edu.stanford.protege.webprotege.common.Response;
6+
7+
import java.util.Set;
8+
9+
import static edu.stanford.protege.webprotege.authorization.GetAuthorizedCapabilitiesForEntityRequest.CHANNEL;
10+
11+
@JsonTypeName(CHANNEL)
12+
public record GetAuthorizedCapabilitiesForEntityResponse(ImmutableSet<Capability> capabilities) implements Response {
13+
14+
}

0 commit comments

Comments
 (0)