Init {Config,Permissions}Resource through CollectionRegistry (#2675)

This commit is contained in:
Matt 2022-02-08 22:16:40 -08:00 committed by GitHub
parent 4abede9f9d
commit ea6a13fc7b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 9 deletions

View File

@ -56,8 +56,6 @@ import org.openmetadata.catalog.fernet.Fernet;
import org.openmetadata.catalog.migration.Migration; import org.openmetadata.catalog.migration.Migration;
import org.openmetadata.catalog.migration.MigrationConfiguration; import org.openmetadata.catalog.migration.MigrationConfiguration;
import org.openmetadata.catalog.resources.CollectionRegistry; import org.openmetadata.catalog.resources.CollectionRegistry;
import org.openmetadata.catalog.resources.config.ConfigResource;
import org.openmetadata.catalog.resources.permissions.PermissionsResource;
import org.openmetadata.catalog.resources.search.SearchResource; import org.openmetadata.catalog.resources.search.SearchResource;
import org.openmetadata.catalog.security.AuthenticationConfiguration; import org.openmetadata.catalog.security.AuthenticationConfiguration;
import org.openmetadata.catalog.security.Authorizer; import org.openmetadata.catalog.security.Authorizer;
@ -203,10 +201,6 @@ public class CatalogApplication extends Application<CatalogApplicationConfig> {
ContainerRequestFilter filter = NoopFilter.class.getConstructor().newInstance(); ContainerRequestFilter filter = NoopFilter.class.getConstructor().newInstance();
environment.jersey().register(filter); environment.jersey().register(filter);
} }
// Register config API
environment.jersey().register(new ConfigResource(catalogConfig));
// Register permissions API
environment.jersey().register(new PermissionsResource(authorizer));
} }
private void registerEventFilter(CatalogApplicationConfig catalogConfig, Environment environment, Jdbi jdbi) { private void registerEventFilter(CatalogApplicationConfig catalogConfig, Environment environment, Jdbi jdbi) {

View File

@ -200,9 +200,13 @@ public final class CollectionRegistry {
// Create the resource identified by resourceClass // Create the resource identified by resourceClass
try { try {
resource = clz.getDeclaredConstructor(CollectionDAO.class, Authorizer.class).newInstance(daoObject, authorizer); resource = clz.getDeclaredConstructor(CollectionDAO.class, Authorizer.class).newInstance(daoObject, authorizer);
} catch (NoSuchMethodException e) {
try {
resource = clz.getDeclaredConstructor(CatalogApplicationConfig.class).newInstance(config);
} catch (NoSuchMethodException ex) { } catch (NoSuchMethodException ex) {
resource = Class.forName(resourceClass).getConstructor().newInstance(); resource = Class.forName(resourceClass).getConstructor().newInstance();
} }
}
// Call initialize method, if it exists // Call initialize method, if it exists
try { try {

View File

@ -25,6 +25,7 @@ import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType; import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.SecurityContext; import javax.ws.rs.core.SecurityContext;
import lombok.NonNull; import lombok.NonNull;
import org.openmetadata.catalog.jdbi3.CollectionDAO;
import org.openmetadata.catalog.resources.Collection; import org.openmetadata.catalog.resources.Collection;
import org.openmetadata.catalog.security.Authorizer; import org.openmetadata.catalog.security.Authorizer;
import org.openmetadata.catalog.security.Permissions; import org.openmetadata.catalog.security.Permissions;
@ -37,7 +38,7 @@ import org.openmetadata.catalog.security.SecurityUtil;
public class PermissionsResource { public class PermissionsResource {
private final Authorizer authorizer; private final Authorizer authorizer;
public PermissionsResource(@NonNull Authorizer authorizer) { public PermissionsResource(CollectionDAO dao, @NonNull Authorizer authorizer) {
this.authorizer = authorizer; this.authorizer = authorizer;
} }