Skip to content

Commit d3e182c

Browse files
authored
Makes AuthorizationContainer extend Describable (#169)
This is for compatibility work with a core change i'm preparing...
1 parent 24b0b3f commit d3e182c

8 files changed

+12
-12
lines changed

src/main/java/com/cloudbees/hudson/plugins/folder/properties/AuthorizationMatrixProperty.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@
7575
* Holds ACL for {@link ProjectMatrixAuthorizationStrategy}.
7676
*/
7777
public class AuthorizationMatrixProperty extends AbstractFolderProperty<AbstractFolder<?>>
78-
implements AuthorizationProperty {
78+
implements AuthorizationProperty<AbstractFolderProperty<?>> {
7979

8080
private final transient SidACL acl = new AclImpl();
8181

src/main/java/hudson/security/AuthorizationMatrixProperty.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,8 @@
7878
* Once created (and initialized), this object becomes immutable.
7979
*/
8080
// TODO attempt to make this OptionalJobProperty
81-
public class AuthorizationMatrixProperty extends JobProperty<Job<?, ?>> implements AuthorizationProperty {
81+
public class AuthorizationMatrixProperty extends JobProperty<Job<?, ?>>
82+
implements AuthorizationProperty<JobProperty<?>> {
8283

8384
private final transient SidACL acl = new AclImpl();
8485

src/main/java/hudson/security/GlobalMatrixAuthorizationStrategy.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@
6262
* Role-based authorization via a matrix.
6363
*/
6464
// TODO: think about the concurrency commitment of this class
65-
public class GlobalMatrixAuthorizationStrategy extends AuthorizationStrategy implements AuthorizationContainer {
65+
public class GlobalMatrixAuthorizationStrategy extends AuthorizationStrategy
66+
implements AuthorizationContainer<AuthorizationStrategy> {
6667
private final transient SidACL acl = new AclImpl();
6768

6869
/**

src/main/java/org/jenkinsci/plugins/matrixauth/AmbiguityMonitor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ public void onDeleted(Item item) {
234234
}
235235
}
236236

237-
public static boolean hasAmbiguousEntries(final AuthorizationContainer container) {
237+
public static boolean hasAmbiguousEntries(final AuthorizationContainer<?> container) {
238238
if (container == null) {
239239
return false;
240240
}

src/main/java/org/jenkinsci/plugins/matrixauth/AuthorizationContainer.java

+2-5
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
package org.jenkinsci.plugins.matrixauth;
2525

2626
import hudson.init.InitMilestone;
27-
import hudson.model.Descriptor;
27+
import hudson.model.Describable;
2828
import hudson.security.AuthorizationStrategy;
2929
import hudson.security.GlobalMatrixAuthorizationStrategy;
3030
import hudson.security.Permission;
@@ -48,7 +48,7 @@
4848
import org.kohsuke.accmod.restrictions.NoExternalUse;
4949

5050
@Restricted(NoExternalUse.class)
51-
public interface AuthorizationContainer {
51+
public interface AuthorizationContainer<T extends Describable<T>> extends Describable<T> {
5252

5353
Logger LOGGER = Logger.getLogger(AuthorizationContainer.class.getName());
5454

@@ -171,9 +171,6 @@ default Map<Permission, Set<String>> getGrantedPermissions() {
171171
*/
172172
void recordGroup(String sid);
173173

174-
@SuppressWarnings("rawtypes")
175-
Descriptor getDescriptor();
176-
177174
/**
178175
* Works like {@link #add(Permission, PermissionEntry)} but takes both parameters
179176
* from a single string of the form <code>PERMISSION_ID:sid</code> (legacy format, implicit 'EITHER' type)

src/main/java/org/jenkinsci/plugins/matrixauth/AuthorizationContainerDescriptor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ default boolean showPermission(Permission p) {
112112
}
113113

114114
@Restricted(DoNotUse.class) // Jelly only
115-
default boolean hasAmbiguousEntries(AuthorizationContainer container) {
115+
default boolean hasAmbiguousEntries(AuthorizationContainer<?> container) {
116116
if (container == null) {
117117
return false;
118118
}

src/main/java/org/jenkinsci/plugins/matrixauth/AuthorizationMatrixNodeProperty.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,8 @@
5959
import org.kohsuke.stapler.QueryParameter;
6060
import org.kohsuke.stapler.StaplerRequest2;
6161

62-
public class AuthorizationMatrixNodeProperty extends NodeProperty<Node> implements AuthorizationProperty {
62+
public class AuthorizationMatrixNodeProperty extends NodeProperty<Node>
63+
implements AuthorizationProperty<NodeProperty<?>> {
6364

6465
private final transient SidACL acl = new AclImpl();
6566

src/main/java/org/jenkinsci/plugins/matrixauth/AuthorizationProperty.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
import org.kohsuke.stapler.DataBoundConstructor;
4949

5050
@Restricted(NoExternalUse.class)
51-
public interface AuthorizationProperty extends AuthorizationContainer {
51+
public interface AuthorizationProperty<T extends Describable<T>> extends AuthorizationContainer<T> {
5252

5353
void setInheritanceStrategy(InheritanceStrategy inheritanceStrategy);
5454

0 commit comments

Comments
 (0)