Search in sources :

Example 1 with WorkflowDAO

use of io.dockstore.webservice.jdbi.WorkflowDAO in project dockstore by dockstore.

the class WorkflowIT method setup.

@Before
public void setup() {
    DockstoreWebserviceApplication application = SUPPORT.getApplication();
    SessionFactory sessionFactory = application.getHibernate().getSessionFactory();
    this.workflowDAO = new WorkflowDAO(sessionFactory);
    this.workflowVersionDAO = new WorkflowVersionDAO(sessionFactory);
    this.fileDAO = new FileDAO(sessionFactory);
    // used to allow us to use workflowDAO outside of the web service
    Session session = application.getHibernate().getSessionFactory().openSession();
    ManagedSessionContext.bind(session);
}
Also used : SessionFactory(org.hibernate.SessionFactory) WorkflowDAO(io.dockstore.webservice.jdbi.WorkflowDAO) WorkflowVersionDAO(io.dockstore.webservice.jdbi.WorkflowVersionDAO) FileDAO(io.dockstore.webservice.jdbi.FileDAO) DockstoreWebserviceApplication(io.dockstore.webservice.DockstoreWebserviceApplication) Session(org.hibernate.Session) Before(org.junit.Before)

Example 2 with WorkflowDAO

use of io.dockstore.webservice.jdbi.WorkflowDAO in project dockstore by dockstore.

the class UserResource method deleteSelfFromEntries.

private void deleteSelfFromEntries(User user) {
    user.getEntries().stream().filter(e -> e.getUsers().size() == 1 && !e.getIsPublished()).forEach(entry -> {
        EntryDAO entryDAO;
        if (entry instanceof Workflow) {
            entryDAO = workflowDAO;
        } else if (entry instanceof Tool) {
            entryDAO = toolDAO;
        } else {
            throw new CustomWebApplicationException(MessageFormat.format("Unexpected entry type {0}", entry.getClass().toString()), HttpStatus.SC_INTERNAL_SERVER_ERROR);
        }
        eventDAO.deleteEventByEntryID(entry.getId());
        entryDAO.delete(entry);
    });
}
Also used : Arrays(java.util.Arrays) RolesAllowed(javax.annotation.security.RolesAllowed) Produces(javax.ws.rs.Produces) WorkflowDAO(io.dockstore.webservice.jdbi.WorkflowDAO) CustomWebApplicationException(io.dockstore.webservice.CustomWebApplicationException) ApiParam(io.swagger.annotations.ApiParam) Registry(io.dockstore.common.Registry) SourceCodeRepoFactory(io.dockstore.webservice.helpers.SourceCodeRepoFactory) MediaType(javax.ws.rs.core.MediaType) Matcher(java.util.regex.Matcher) Map(java.util.Map) PAGINATION_LIMIT_TEXT(io.dockstore.webservice.resources.ResourceConstants.PAGINATION_LIMIT_TEXT) User(io.dockstore.webservice.core.User) OrganizationUpdateTime(io.dockstore.webservice.core.OrganizationUpdateTime) TokenViews(io.dockstore.webservice.core.TokenViews) Collection(io.dockstore.webservice.core.Collection) SessionFactory(org.hibernate.SessionFactory) Set(java.util.Set) Tool(io.dockstore.webservice.core.Tool) Repository(io.dockstore.common.Repository) CloudInstance(io.dockstore.webservice.core.CloudInstance) EntryUpdateTime(io.dockstore.webservice.core.EntryUpdateTime) PATCH(io.swagger.jaxrs.PATCH) UnitOfWork(io.dropwizard.hibernate.UnitOfWork) Tag(io.swagger.v3.oas.annotations.tags.Tag) PrivilegeRequest(io.dockstore.webservice.api.PrivilegeRequest) LambdaEvent(io.dockstore.webservice.core.LambdaEvent) ApiResponses(io.swagger.v3.oas.annotations.responses.ApiResponses) CachingAuthenticator(io.dropwizard.auth.CachingAuthenticator) PAGINATION_LIMIT(io.dockstore.webservice.resources.ResourceConstants.PAGINATION_LIMIT) GET(javax.ws.rs.GET) JWT_SECURITY_DEFINITION_NAME(io.dockstore.webservice.Constants.JWT_SECURITY_DEFINITION_NAME) PublicStateManager(io.dockstore.webservice.helpers.PublicStateManager) ArrayList(java.util.ArrayList) ServiceDAO(io.dockstore.webservice.jdbi.ServiceDAO) Content(io.swagger.v3.oas.annotations.media.Content) Operation(io.swagger.v3.oas.annotations.Operation) Lists(com.google.common.collect.Lists) EntryDAO(io.dockstore.webservice.jdbi.EntryDAO) HttpClient(org.apache.http.client.HttpClient) EventDAO(io.dockstore.webservice.jdbi.EventDAO) ExtendedUserData(io.dockstore.webservice.core.ExtendedUserData) Api(io.swagger.annotations.Api) Token(io.dockstore.webservice.core.Token) Workflow(io.dockstore.webservice.core.Workflow) UserDAO(io.dockstore.webservice.jdbi.UserDAO) LinkedHashSet(java.util.LinkedHashSet) ToolDAO(io.dockstore.webservice.jdbi.ToolDAO) DeletedUserHelper(io.dockstore.webservice.helpers.DeletedUserHelper) DeletedUsernameDAO(io.dockstore.webservice.jdbi.DeletedUsernameDAO) SourceCodeRepoInterface(io.dockstore.webservice.helpers.SourceCodeRepoInterface) ArraySchema(io.swagger.v3.oas.annotations.media.ArraySchema) Organization(io.dockstore.webservice.core.Organization) TokenDAO(io.dockstore.webservice.jdbi.TokenDAO) MyWorkflows(io.dockstore.webservice.core.database.MyWorkflows) PAGINATION_OFFSET_TEXT(io.dockstore.webservice.resources.ResourceConstants.PAGINATION_OFFSET_TEXT) JsonView(com.fasterxml.jackson.annotation.JsonView) Path(javax.ws.rs.Path) LoggerFactory(org.slf4j.LoggerFactory) HttpStatus(org.apache.http.HttpStatus) DockstoreWebserviceConfiguration(io.dockstore.webservice.DockstoreWebserviceConfiguration) BioWorkflowDAO(io.dockstore.webservice.jdbi.BioWorkflowDAO) OrganizationUser(io.dockstore.webservice.core.OrganizationUser) ApiOperation(io.swagger.annotations.ApiOperation) QueryParam(javax.ws.rs.QueryParam) Consumes(javax.ws.rs.Consumes) DefaultValue(javax.ws.rs.DefaultValue) TokenType(io.dockstore.webservice.core.TokenType) OPENAPI_JWT_SECURITY_DEFINITION_NAME(io.dockstore.webservice.resources.ResourceConstants.OPENAPI_JWT_SECURITY_DEFINITION_NAME) DELETE(javax.ws.rs.DELETE) DeletedUsername(io.dockstore.webservice.core.DeletedUsername) SecurityRequirement(io.swagger.v3.oas.annotations.security.SecurityRequirement) Schema(io.swagger.v3.oas.annotations.media.Schema) Service(io.dockstore.webservice.core.Service) Timestamp(java.sql.Timestamp) Limits(io.dockstore.webservice.api.Limits) Collectors(java.util.stream.Collectors) GoogleHelper(io.dockstore.webservice.helpers.GoogleHelper) Objects(java.util.Objects) Parameter(io.swagger.v3.oas.annotations.Parameter) Timed(com.codahale.metrics.annotation.Timed) List(java.util.List) EntryLite(io.dockstore.webservice.core.database.EntryLite) BioWorkflow(io.dockstore.webservice.core.BioWorkflow) Optional(java.util.Optional) Pattern(java.util.regex.Pattern) PathParam(javax.ws.rs.PathParam) WorkflowMode(io.dockstore.webservice.core.WorkflowMode) Auth(io.dropwizard.auth.Auth) HashMap(java.util.HashMap) ParameterIn(io.swagger.v3.oas.annotations.enums.ParameterIn) MessageFormat(java.text.MessageFormat) HashSet(java.util.HashSet) EntryVersionHelper(io.dockstore.webservice.helpers.EntryVersionHelper) SourceControl(io.dockstore.common.SourceControl) ApiResponse(io.swagger.v3.oas.annotations.responses.ApiResponse) APPEASE_SWAGGER_PATCH(io.dockstore.webservice.resources.ResourceConstants.APPEASE_SWAGGER_PATCH) POST(javax.ws.rs.POST) Logger(org.slf4j.Logger) SourceControlOrganization(io.dockstore.webservice.core.SourceControlOrganization) PermissionsInterface(io.dockstore.webservice.permissions.PermissionsInterface) Entry(io.dockstore.webservice.core.Entry) LambdaEventDAO(io.dockstore.webservice.jdbi.LambdaEventDAO) PUT(javax.ws.rs.PUT) GitHubSourceCodeRepo(io.dockstore.webservice.helpers.GitHubSourceCodeRepo) Comparator(java.util.Comparator) Authorization(io.swagger.annotations.Authorization) Hibernate(org.hibernate.Hibernate) Workflow(io.dockstore.webservice.core.Workflow) BioWorkflow(io.dockstore.webservice.core.BioWorkflow) CustomWebApplicationException(io.dockstore.webservice.CustomWebApplicationException) EntryDAO(io.dockstore.webservice.jdbi.EntryDAO) Tool(io.dockstore.webservice.core.Tool)

Example 3 with WorkflowDAO

use of io.dockstore.webservice.jdbi.WorkflowDAO in project dockstore by dockstore.

the class ServiceIT method setup.

@Before
public void setup() {
    DockstoreWebserviceApplication application = SUPPORT.getApplication();
    SessionFactory sessionFactory = application.getHibernate().getSessionFactory();
    this.workflowDAO = new WorkflowDAO(sessionFactory);
    this.serviceDAO = new ServiceDAO(sessionFactory);
    this.userDAO = new UserDAO(sessionFactory);
    this.fileDAO = new FileDAO(sessionFactory);
    // non-confidential test database sequences seem messed up and need to be iterated past, but other tests may depend on ids
    testingPostgres.runUpdateStatement("alter sequence enduser_id_seq increment by 50 restart with 100");
    testingPostgres.runUpdateStatement("alter sequence token_id_seq increment by 50 restart with 100");
    // used to allow us to use tokenDAO outside of the web service
    this.session = application.getHibernate().getSessionFactory().openSession();
    ManagedSessionContext.bind(session);
}
Also used : SessionFactory(org.hibernate.SessionFactory) WorkflowDAO(io.dockstore.webservice.jdbi.WorkflowDAO) UserDAO(io.dockstore.webservice.jdbi.UserDAO) FileDAO(io.dockstore.webservice.jdbi.FileDAO) ServiceDAO(io.dockstore.webservice.jdbi.ServiceDAO) Before(org.junit.Before)

Example 4 with WorkflowDAO

use of io.dockstore.webservice.jdbi.WorkflowDAO in project dockstore by dockstore.

the class DockstoreWebserviceApplication method run.

@Override
public void run(DockstoreWebserviceConfiguration configuration, Environment environment) {
    BeanConfig beanConfig = new BeanConfig();
    beanConfig.setSchemes(new String[] { configuration.getExternalConfig().getScheme() });
    String portFragment = configuration.getExternalConfig().getPort() == null ? "" : ":" + configuration.getExternalConfig().getPort();
    beanConfig.setHost(configuration.getExternalConfig().getHostname() + portFragment);
    beanConfig.setBasePath(MoreObjects.firstNonNull(configuration.getExternalConfig().getBasePath(), "/"));
    beanConfig.setResourcePackage("io.dockstore.webservice.resources,io.swagger.api,io.openapi.api");
    beanConfig.setScan(true);
    final DefaultPluginManager languagePluginManager = LanguagePluginManager.getInstance(getFilePluginLocation(configuration));
    describeAvailableLanguagePlugins(languagePluginManager);
    LanguageHandlerFactory.setLanguagePluginManager(languagePluginManager);
    final PublicStateManager publicStateManager = PublicStateManager.getInstance();
    publicStateManager.setConfig(configuration);
    final TRSListener trsListener = new TRSListener();
    publicStateManager.addListener(trsListener);
    environment.jersey().property(CommonProperties.FEATURE_AUTO_DISCOVERY_DISABLE, true);
    environment.jersey().register(new JsonProcessingExceptionMapper(true));
    final TemplateHealthCheck healthCheck = new TemplateHealthCheck(configuration.getTemplate());
    environment.healthChecks().register("template", healthCheck);
    final ElasticSearchHealthCheck elasticSearchHealthCheck = new ElasticSearchHealthCheck(new ToolsExtendedApi());
    environment.healthChecks().register("elasticSearch", elasticSearchHealthCheck);
    environment.lifecycle().manage(new ElasticSearchHelper(configuration.getEsConfiguration()));
    final UserDAO userDAO = new UserDAO(hibernate.getSessionFactory());
    final TokenDAO tokenDAO = new TokenDAO(hibernate.getSessionFactory());
    final DeletedUsernameDAO deletedUsernameDAO = new DeletedUsernameDAO(hibernate.getSessionFactory());
    final ToolDAO toolDAO = new ToolDAO(hibernate.getSessionFactory());
    final FileDAO fileDAO = new FileDAO(hibernate.getSessionFactory());
    final WorkflowDAO workflowDAO = new WorkflowDAO(hibernate.getSessionFactory());
    final TagDAO tagDAO = new TagDAO(hibernate.getSessionFactory());
    final EventDAO eventDAO = new EventDAO(hibernate.getSessionFactory());
    final VersionDAO versionDAO = new VersionDAO(hibernate.getSessionFactory());
    final BioWorkflowDAO bioWorkflowDAO = new BioWorkflowDAO(hibernate.getSessionFactory());
    LOG.info("Cache directory for OkHttp is: " + cache.directory().getAbsolutePath());
    LOG.info("This is our custom logger saying that we're about to load authenticators");
    // setup authentication to allow session access in authenticators, see https://github.com/dropwizard/dropwizard/pull/1361
    SimpleAuthenticator authenticator = new UnitOfWorkAwareProxyFactory(getHibernate()).create(SimpleAuthenticator.class, new Class[] { TokenDAO.class, UserDAO.class }, new Object[] { tokenDAO, userDAO });
    CachingAuthenticator<String, User> cachingAuthenticator = new CachingAuthenticator<>(environment.metrics(), authenticator, configuration.getAuthenticationCachePolicy());
    environment.jersey().register(new AuthDynamicFeature(new OAuthCredentialAuthFilter.Builder<User>().setAuthenticator(cachingAuthenticator).setAuthorizer(new SimpleAuthorizer()).setPrefix("Bearer").setRealm("Dockstore User Authentication").buildAuthFilter()));
    environment.jersey().register(new AuthValueFactoryProvider.Binder<>(User.class));
    environment.jersey().register(RolesAllowedDynamicFeature.class);
    final HttpClient httpClient = new HttpClientBuilder(environment).using(configuration.getHttpClientConfiguration()).build(getName());
    final PermissionsInterface authorizer = PermissionsFactory.createAuthorizer(tokenDAO, configuration);
    final EntryResource entryResource = new EntryResource(tokenDAO, toolDAO, versionDAO, userDAO, configuration);
    environment.jersey().register(entryResource);
    final WorkflowResource workflowResource = new WorkflowResource(httpClient, hibernate.getSessionFactory(), authorizer, entryResource, configuration);
    environment.jersey().register(workflowResource);
    final ServiceResource serviceResource = new ServiceResource(httpClient, hibernate.getSessionFactory(), entryResource, configuration);
    environment.jersey().register(serviceResource);
    // Note workflow resource must be passed to the docker repo resource, as the workflow resource refresh must be called for checker workflows
    final DockerRepoResource dockerRepoResource = new DockerRepoResource(httpClient, hibernate.getSessionFactory(), configuration, workflowResource, entryResource);
    environment.jersey().register(dockerRepoResource);
    environment.jersey().register(new DockerRepoTagResource(toolDAO, tagDAO, eventDAO, versionDAO));
    environment.jersey().register(new TokenResource(tokenDAO, userDAO, deletedUsernameDAO, httpClient, cachingAuthenticator, configuration));
    environment.jersey().register(new UserResource(httpClient, getHibernate().getSessionFactory(), workflowResource, serviceResource, dockerRepoResource, cachingAuthenticator, authorizer, configuration));
    MetadataResourceHelper.init(configuration);
    environment.jersey().register(new UserResourceDockerRegistries(getHibernate().getSessionFactory()));
    environment.jersey().register(new MetadataResource(getHibernate().getSessionFactory(), configuration));
    environment.jersey().register(new HostedToolResource(getHibernate().getSessionFactory(), authorizer, configuration.getLimitConfig()));
    environment.jersey().register(new HostedWorkflowResource(getHibernate().getSessionFactory(), authorizer, configuration.getLimitConfig()));
    environment.jersey().register(new OrganizationResource(getHibernate().getSessionFactory()));
    environment.jersey().register(new LambdaEventResource(getHibernate().getSessionFactory()));
    environment.jersey().register(new NotificationResource(getHibernate().getSessionFactory()));
    environment.jersey().register(new CollectionResource(getHibernate().getSessionFactory()));
    environment.jersey().register(new EventResource(eventDAO, userDAO));
    environment.jersey().register(new ToolTesterResource(configuration));
    environment.jersey().register(new CloudInstanceResource(getHibernate().getSessionFactory()));
    // disable odd extra endpoints showing up
    final SwaggerConfiguration swaggerConfiguration = new SwaggerConfiguration().prettyPrint(true);
    swaggerConfiguration.setIgnoredRoutes(Lists.newArrayList("/application.wadl", "/pprof"));
    BaseOpenApiResource openApiResource = new OpenApiResource().openApiConfiguration(swaggerConfiguration);
    environment.jersey().register(openApiResource);
    final AliasResource aliasResource = new AliasResource(hibernate.getSessionFactory(), workflowResource);
    environment.jersey().register(aliasResource);
    // attach the container dao statically to avoid too much modification of generated code
    ToolsApiServiceImpl.setToolDAO(toolDAO);
    ToolsApiServiceImpl.setWorkflowDAO(workflowDAO);
    ToolsApiServiceImpl.setBioWorkflowDAO(bioWorkflowDAO);
    ToolsApiServiceImpl.setFileDAO(fileDAO);
    ToolsApiServiceImpl.setConfig(configuration);
    ToolsApiServiceImpl.setTrsListener(trsListener);
    ToolsApiExtendedServiceImpl.setStateManager(publicStateManager);
    ToolsApiExtendedServiceImpl.setToolDAO(toolDAO);
    ToolsApiExtendedServiceImpl.setWorkflowDAO(workflowDAO);
    ToolsApiExtendedServiceImpl.setConfig(configuration);
    DOIGeneratorFactory.setConfig(configuration);
    GoogleHelper.setConfig(configuration);
    registerAPIsAndMisc(environment);
    // optional CORS support
    // Enable CORS headers
    // final FilterRegistration.Dynamic cors = environment.servlets().addFilter("CORS", CrossOriginFilter.class);
    final FilterHolder filterHolder = environment.getApplicationContext().addFilter(CrossOriginFilter.class, "/*", EnumSet.of(REQUEST));
    filterHolder.setInitParameter(ACCESS_CONTROL_ALLOW_METHODS_HEADER, "GET,POST,DELETE,PUT,OPTIONS,PATCH");
    filterHolder.setInitParameter(ALLOWED_ORIGINS_PARAM, "*");
    filterHolder.setInitParameter(ALLOWED_METHODS_PARAM, "GET,POST,DELETE,PUT,OPTIONS,PATCH");
    filterHolder.setInitParameter(ALLOWED_HEADERS_PARAM, "Authorization, X-Auth-Username, X-Auth-Password, X-Requested-With,Content-Type,Accept,Origin,Access-Control-Request-Headers,cache-control");
    // Initialize GitHub App Installation Access Token cache
    CacheConfigManager cacheConfigManager = CacheConfigManager.getInstance();
    cacheConfigManager.initCache();
}
Also used : FilterHolder(org.eclipse.jetty.servlet.FilterHolder) TokenResource(io.dockstore.webservice.resources.TokenResource) UnitOfWorkAwareProxyFactory(io.dropwizard.hibernate.UnitOfWorkAwareProxyFactory) AuthValueFactoryProvider(io.dropwizard.auth.AuthValueFactoryProvider) ElasticSearchHelper(io.dockstore.webservice.helpers.ElasticSearchHelper) SwaggerConfiguration(io.swagger.v3.oas.integration.SwaggerConfiguration) ElasticSearchHealthCheck(io.dockstore.webservice.resources.ElasticSearchHealthCheck) FileDAO(io.dockstore.webservice.jdbi.FileDAO) HostedWorkflowResource(io.dockstore.webservice.resources.HostedWorkflowResource) TemplateHealthCheck(io.dockstore.webservice.resources.TemplateHealthCheck) AuthDynamicFeature(io.dropwizard.auth.AuthDynamicFeature) UserResourceDockerRegistries(io.dockstore.webservice.resources.UserResourceDockerRegistries) ToolsExtendedApi(io.dockstore.webservice.resources.proposedGA4GH.ToolsExtendedApi) MetadataResource(io.dockstore.webservice.resources.MetadataResource) WorkflowResource(io.dockstore.webservice.resources.WorkflowResource) HostedWorkflowResource(io.dockstore.webservice.resources.HostedWorkflowResource) DockerRepoTagResource(io.dockstore.webservice.resources.DockerRepoTagResource) UserResource(io.dockstore.webservice.resources.UserResource) PublicStateManager(io.dockstore.webservice.helpers.PublicStateManager) LambdaEventResource(io.dockstore.webservice.resources.LambdaEventResource) EventResource(io.dockstore.webservice.resources.EventResource) OAuthCredentialAuthFilter(io.dropwizard.auth.oauth.OAuthCredentialAuthFilter) TRSListener(io.dockstore.webservice.helpers.statelisteners.TRSListener) WorkflowDAO(io.dockstore.webservice.jdbi.WorkflowDAO) BioWorkflowDAO(io.dockstore.webservice.jdbi.BioWorkflowDAO) NotificationResource(io.dockstore.webservice.resources.NotificationResource) BioWorkflowDAO(io.dockstore.webservice.jdbi.BioWorkflowDAO) PermissionsInterface(io.dockstore.webservice.permissions.PermissionsInterface) CollectionResource(io.dockstore.webservice.resources.CollectionResource) User(io.dockstore.webservice.core.User) OrganizationUser(io.dockstore.webservice.core.OrganizationUser) AliasResource(io.dockstore.webservice.resources.AliasResource) HttpClientBuilder(io.dropwizard.client.HttpClientBuilder) HostedToolResource(io.dockstore.webservice.resources.HostedToolResource) JsonProcessingExceptionMapper(io.dropwizard.jersey.jackson.JsonProcessingExceptionMapper) UserDAO(io.dockstore.webservice.jdbi.UserDAO) DockerRepoResource(io.dockstore.webservice.resources.DockerRepoResource) CacheConfigManager(io.dockstore.webservice.helpers.CacheConfigManager) EventDAO(io.dockstore.webservice.jdbi.EventDAO) EntryResource(io.dockstore.webservice.resources.EntryResource) ServiceResource(io.dockstore.webservice.resources.ServiceResource) BeanConfig(io.swagger.jaxrs.config.BeanConfig) VersionDAO(io.dockstore.webservice.jdbi.VersionDAO) TagDAO(io.dockstore.webservice.jdbi.TagDAO) CachingAuthenticator(io.dropwizard.auth.CachingAuthenticator) LambdaEventResource(io.dockstore.webservice.resources.LambdaEventResource) DeletedUsernameDAO(io.dockstore.webservice.jdbi.DeletedUsernameDAO) DefaultPluginManager(org.pf4j.DefaultPluginManager) CloudInstanceResource(io.dockstore.webservice.resources.CloudInstanceResource) ToolTesterResource(io.dockstore.webservice.resources.ToolTesterResource) BaseOpenApiResource(io.swagger.v3.jaxrs2.integration.resources.BaseOpenApiResource) OpenApiResource(io.swagger.v3.jaxrs2.integration.resources.OpenApiResource) BaseOpenApiResource(io.swagger.v3.jaxrs2.integration.resources.BaseOpenApiResource) OrganizationResource(io.dockstore.webservice.resources.OrganizationResource) TokenDAO(io.dockstore.webservice.jdbi.TokenDAO) HttpClient(org.apache.http.client.HttpClient) OkHttpClient(okhttp3.OkHttpClient) ToolDAO(io.dockstore.webservice.jdbi.ToolDAO)

Aggregations

WorkflowDAO (io.dockstore.webservice.jdbi.WorkflowDAO)4 OrganizationUser (io.dockstore.webservice.core.OrganizationUser)2 User (io.dockstore.webservice.core.User)2 FileDAO (io.dockstore.webservice.jdbi.FileDAO)2 UserDAO (io.dockstore.webservice.jdbi.UserDAO)2 SessionFactory (org.hibernate.SessionFactory)2 Timed (com.codahale.metrics.annotation.Timed)1 JsonView (com.fasterxml.jackson.annotation.JsonView)1 Lists (com.google.common.collect.Lists)1 Registry (io.dockstore.common.Registry)1 Repository (io.dockstore.common.Repository)1 SourceControl (io.dockstore.common.SourceControl)1 JWT_SECURITY_DEFINITION_NAME (io.dockstore.webservice.Constants.JWT_SECURITY_DEFINITION_NAME)1 CustomWebApplicationException (io.dockstore.webservice.CustomWebApplicationException)1 DockstoreWebserviceApplication (io.dockstore.webservice.DockstoreWebserviceApplication)1 DockstoreWebserviceConfiguration (io.dockstore.webservice.DockstoreWebserviceConfiguration)1 Limits (io.dockstore.webservice.api.Limits)1 PrivilegeRequest (io.dockstore.webservice.api.PrivilegeRequest)1 BioWorkflow (io.dockstore.webservice.core.BioWorkflow)1 CloudInstance (io.dockstore.webservice.core.CloudInstance)1