You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by pp...@apache.org on 2022/02/01 14:49:58 UTC
[incubator-datalab] 03/03: [SPRING-MIGRATION] Self-service, provisioning
This is an automated email from the ASF dual-hosted git repository.
ppapou pushed a commit to branch spring-migration
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit 6656c72002c7f0f767f8d4001e0dd719ff6e354b
Author: Pavel Papou <pp...@gmail.com>
AuthorDate: Tue Feb 1 09:30:57 2022 -0500
[SPRING-MIGRATION] Self-service, provisioning
- self service spring migration
---
.../backendapi/conf/SecurityConfiguration.java | 1 -
services/self-service/pom.xml | 91 +++++++++++++++-
services/self-service/self-service.yml | 70 ++++++------
.../datalab/backendapi/SelfServiceApplication.java | 121 ++++++++++-----------
.../backendapi/conf/KeycloakConfiguration.java | 72 ++++++++----
.../com/epam/datalab/backendapi/dao/EnvDAO.java | 2 +-
.../dropwizard/bundles/DatalabKeycloakBundle.java | 58 ----------
.../backendapi/healthcheck/MongoHealthCheck.java | 3 +-
.../backendapi/interceptor/AuditInterceptor.java | 6 +-
.../interceptor/BudgetLimitInterceptor.java | 5 +-
.../interceptor/ProjectAdminInterceptor.java | 5 +-
.../resources/ApplicationSettingResource.java | 3 +-
.../backendapi/resources/AuditResource.java | 3 +-
.../backendapi/resources/BackupResource.java | 3 +-
.../resources/ChangePropertiesResource.java | 3 +-
.../backendapi/resources/EndpointResource.java | 3 +-
.../backendapi/resources/EnvironmentResource.java | 3 +-
.../backendapi/resources/ExploratoryResource.java | 3 +-
.../backendapi/resources/GitCredsResource.java | 3 +-
.../resources/ImageExploratoryResource.java | 3 +-
.../resources/InfrastructureInfoResource.java | 4 +-
.../backendapi/resources/KeycloakResource.java | 30 +++--
.../resources/LibExploratoryResource.java | 3 +-
.../backendapi/resources/OdahuResource.java | 3 +-
.../backendapi/resources/ProjectResource.java | 6 +-
.../backendapi/resources/SchedulerJobResource.java | 3 +-
.../backendapi/resources/SystemInfoResource.java | 3 +-
.../backendapi/resources/UserGroupResource.java | 3 +-
.../backendapi/resources/UserRoleResource.java | 3 +-
.../backendapi/resources/UserSettingsResource.java | 3 +-
.../resources/callback/BackupCallback.java | 5 +-
.../callback/CheckInactivityCallback.java | 5 +-
.../resources/callback/ComputationalCallback.java | 11 +-
.../callback/EnvironmentStatusCallback.java | 3 +-
.../resources/callback/ExploratoryCallback.java | 13 ++-
.../resources/callback/GitCredsCallback.java | 3 +-
.../resources/callback/ImageCallback.java | 5 +-
.../resources/callback/LibraryCallback.java | 5 +-
.../resources/callback/OdahuCallback.java | 3 +-
.../resources/callback/ProjectCallback.java | 3 +-
.../resources/callback/ReuploadKeyCallback.java | 5 +-
.../schedulers/CheckApplicationQuoteScheduler.java | 5 +-
.../schedulers/CheckInactivityScheduledJob.java | 3 +-
.../CheckInfrastructureStatusScheduler.java | 3 +-
.../schedulers/CheckProjectQuoteScheduler.java | 7 +-
.../schedulers/CheckUserQuoteScheduler.java | 5 +-
.../schedulers/billing/BillingScheduler.java | 3 +-
.../computational/StartComputationalJob.java | 3 +-
.../computational/StopComputationalJob.java | 3 +-
.../computational/TerminateComputationalJob.java | 3 +-
.../endpoint/CheckEndpointStatusScheduler.java | 5 +-
.../exploratory/StartExploratoryJob.java | 3 +-
.../schedulers/exploratory/StopExploratoryJob.java | 3 +-
.../service/ApplicationSettingServiceImpl.java | 3 +-
.../backendapi/service/KeycloakServiceImpl.java | 22 ++--
.../backendapi/service/SecurityServiceImpl.java | 3 +-
.../datalab/backendapi/service/TagServiceImpl.java | 3 +-
.../backendapi/service/UserRoleServiceImpl.java | 6 +-
.../backendapi/service/UserSettingServiceImpl.java | 6 +-
.../service/impl/AccessKeyServiceImpl.java | 6 +-
.../backendapi/service/impl/AuditServiceImpl.java | 3 +-
.../backendapi/service/impl/BackupServiceImpl.java | 8 +-
.../service/impl/BillingServiceImpl.java | 3 +-
.../backendapi/service/impl/BucketServiceImpl.java | 3 +-
.../service/impl/ComputationalServiceImpl.java | 3 +-
.../service/impl/EndpointServiceImpl.java | 3 +-
.../service/impl/EnvironmentServiceImpl.java | 3 +-
.../service/impl/ExploratoryServiceImpl.java | 6 +-
.../service/impl/GitCredentialServiceImpl.java | 13 ++-
.../service/impl/GuacamoleServiceImpl.java | 6 +-
.../service/impl/ImageExploratoryServiceImpl.java | 18 +--
.../service/impl/InactivityServiceImpl.java | 17 +--
.../impl/InfrastructureInfoServiceImpl.java | 3 +-
.../impl/InfrastructureTemplateServiceImpl.java | 3 +-
.../service/impl/LibraryServiceImpl.java | 3 +-
.../service/impl/MavenCentralLibraryService.java | 3 +-
.../backendapi/service/impl/OdahuServiceImpl.java | 3 +-
.../service/impl/ProjectServiceImpl.java | 3 +-
.../service/impl/ReuploadKeyServiceImpl.java | 13 ++-
.../service/impl/SchedulerJobServiceImpl.java | 22 ++--
.../service/impl/SystemInfoServiceImpl.java | 3 +-
.../service/impl/UserGroupServiceImpl.java | 3 +-
.../servlet/guacamole/GuacamoleServlet.java | 3 +-
.../epam/datalab/backendapi/util/BillingUtils.java | 2 +-
.../datalab/backendapi/util/RequestBuilder.java | 8 +-
.../datalab/backendapi/resources/TestBase.java | 2 +-
86 files changed, 492 insertions(+), 346 deletions(-)
diff --git a/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/conf/SecurityConfiguration.java b/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/conf/SecurityConfiguration.java
index 0f36c3d..f787380 100644
--- a/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/conf/SecurityConfiguration.java
+++ b/services/provisioning-service/src/main/java/com/epam/datalab/backendapi/conf/SecurityConfiguration.java
@@ -2,7 +2,6 @@ package com.epam.datalab.backendapi.conf;
import org.keycloak.adapters.KeycloakConfigResolver;
import org.keycloak.adapters.springboot.KeycloakSpringBootConfigResolver;
-import org.keycloak.adapters.springsecurity.KeycloakConfiguration;
import org.keycloak.adapters.springsecurity.KeycloakSecurityComponents;
import org.keycloak.adapters.springsecurity.authentication.KeycloakAuthenticationProvider;
import org.keycloak.adapters.springsecurity.config.KeycloakWebSecurityConfigurerAdapter;
diff --git a/services/self-service/pom.xml b/services/self-service/pom.xml
index a3eba43..7e34def 100644
--- a/services/self-service/pom.xml
+++ b/services/self-service/pom.xml
@@ -42,14 +42,71 @@
<url>https://nexus.develop.dlabanalytics.com/repository/maven-public/</url>
</repository>
</repositories>
-
+<dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-configuration-processor</artifactId>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-dependencies</artifactId>
+ <version>2.1.3.RELEASE</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-data-mongodb</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-security</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.keycloak</groupId>
+ <artifactId>keycloak-spring-boot-starter</artifactId>
+ <version>16.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.keycloak</groupId>
+ <artifactId>keycloak-spring-security-adapter</artifactId>
+ <version>4.8.3.Final</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.keycloak.bom</groupId>
+ <artifactId>keycloak-adapter-bom</artifactId>
+ <version>4.8.3.Final</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
<dependencies>
<dependency>
<groupId>de.ahus1.keycloak.dropwizard</groupId>
<artifactId>keycloak-dropwizard</artifactId>
<version>1.1.1</version>
</dependency>
-
+ <dependency>
+ <groupId>org.keycloak</groupId>
+ <artifactId>keycloak-spring-boot-starter</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.keycloak</groupId>
+ <artifactId>keycloak-spring-security-adapter</artifactId>
+ <version>4.8.3.Final</version>
+ </dependency>
<dependency>
<groupId>com.novemberain</groupId>
<artifactId>quartz-mongodb</artifactId>
@@ -202,6 +259,32 @@
<artifactId>commons-fileupload</artifactId>
<version>${commons-fileupload.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot</artifactId>
+ <version>2.1.3.RELEASE</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.keycloak</groupId>
+ <artifactId>keycloak-spring-boot-adapter-core</artifactId>
+ <version>4.8.3.Final</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-autoconfigure</artifactId>
+ <version>2.1.3.RELEASE</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.security</groupId>
+ <artifactId>spring-security-config</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.security</groupId>
+ <artifactId>spring-security-web</artifactId>
+ </dependency>
</dependencies>
<build>
@@ -237,11 +320,11 @@
<Created-By><EPAM> Systems</Created-By>
<Name>com/epam/datalab</Name>
<Implementation-Title>DataLab Self-Service</Implementation-Title>
- <DataLab-Version>${datalab.version}</DataLab-Version>
+ <!--DataLab-Version>${datalab.version}</DataLab-Version-->
<Implementation-Vendor><EPAM> Systems</Implementation-Vendor>
<Build-Time>${maven.build.timestamp}</Build-Time>
<Build-OS>${os.name}</Build-OS>
- <GIT-Branch>${scmBranch}</GIT-Branch>
+ <!--GIT-Branch>${scmBranch}</GIT-Branch-->
<GIT-Commit>${buildNumber}</GIT-Commit>
</manifestEntries>
</transformer>
diff --git a/services/self-service/self-service.yml b/services/self-service/self-service.yml
index b8b1ed2..d91a95b 100644
--- a/services/self-service/self-service.yml
+++ b/services/self-service/self-service.yml
@@ -19,7 +19,7 @@
#
# ******************************************************************************
-<#include "infrastructure-provisioning/src/ssn/templates/ssn.yml">
+#<#include "infrastructure-provisioning/src/ssn/templates/ssn.yml">
# Minimum and maximum number of slave EMR instances than could be created
minEmrInstanceCount: 2
@@ -54,17 +54,25 @@ billingPort: 8088
# Set to true to enable audit
auditEnabled: true
# Name of configuration file for billing report.
-<#if DEV_MODE == "true">
-billingConfFile: ${sys['user.dir']}/../billing/billing.yml
-<#else>
-billingConfFile: ${DATALAB_CONF_DIR}/billing.yml
-</#if>
+#<#if DEV_MODE == "true">
+#billingConfFile: ${sys['user.dir']}/../billing/billing.yml
+#<#else>
+#billingConfFile: ${DATALAB_CONF_DIR}/billing.yml
+#</#if>
ssnInstanceSize: <SSN_INSTANCE_SIZE>
serviceBaseName: SERVICE_BASE_NAME
os: OPERATION_SYSTEM
server:
+ type: https
+ port: 8443
+ validateCerts: false
+ ssl:
+ key-store: /home/pavel/keys/ssn.keystore.jks
+ key-store-type: JKS
+ key-alias: ssn
+ key-store-password: KEYSTORE_PASSWORD
requestLog:
appenders:
- type: file
@@ -76,14 +84,7 @@ server:
applicationConnectors:
# - type: http
# port: 8080
- - type: https
- port: 8443
- certAlias: ssn
- validateCerts: false
- keyStorePath: ${KEY_STORE_PATH}
- keyStorePassword: ${KEY_STORE_PASSWORD}
- trustStorePath: ${TRUST_STORE_PATH}
- trustStorePassword: ${TRUST_STORE_PASSWORD}
+
adminConnectors:
# - type: http
# port: 8081
@@ -99,15 +100,18 @@ server:
mongoMigrationEnabled: false
logging:
- level: INFO
- loggers:
- com.epam: INFO
- org.apache.guacamole: DEBUG
- com.novemberain: ERROR
+ level:
+ root: INFO
+ com:
+ epam: INFO
+ novemberain: ERROR
+ org:
+ apache:
+ guacamole: DEBUG
appenders:
-<#if DEV_MODE == "true">
- - type: console
-</#if>
+#<#if DEV_MODE == "true">
+# - type: console
+#</#if>
- type: file
currentLogFilename: ${LOG_ROOT_DIR}/ssn/selfservice.log
archive: true
@@ -167,17 +171,17 @@ guacamole:
port: 22
username: datalab-user
-keycloakConfiguration:
- redirectUri: https://localhost:8443/
- realm: DLAB_bhliva
- bearer-only: true
- auth-server-url: http://52.11.45.11:8080/auth
- ssl-required: none
- register-node-at-startup: true
- register-node-period: 600
- resource: sss
- credentials:
- secret: cf5a484b-039b-4161-8707-ad65c0f25962
+keycloak:
+ #redirectUri: https://localhost:8443/
+ realm: DLAB_bhliva
+ bearer-only: true
+ auth-server-url: http://52.11.45.11:8080/auth
+ ssl-required: none
+ register-node-at-startup: true
+ register-node-period: 600
+ resource: sss
+ credentials:
+ secret: cf5a484b-039b-4161-8707-ad65c0f25962
jerseyClient:
minThreads: 1
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/SelfServiceApplication.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/SelfServiceApplication.java
index 08ebf1a..231aea8 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/SelfServiceApplication.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/SelfServiceApplication.java
@@ -19,53 +19,7 @@
package com.epam.datalab.backendapi;
-import com.epam.datalab.backendapi.conf.SelfServiceApplicationConfiguration;
-import com.epam.datalab.backendapi.dao.IndexCreator;
-import com.epam.datalab.backendapi.domain.ExploratoryLibCache;
-import com.epam.datalab.backendapi.dropwizard.bundles.DatalabKeycloakBundle;
-import com.epam.datalab.backendapi.dropwizard.listeners.MongoStartupListener;
-import com.epam.datalab.backendapi.dropwizard.listeners.RestoreHandlerStartupListener;
-import com.epam.datalab.backendapi.healthcheck.MongoHealthCheck;
-import com.epam.datalab.backendapi.modules.ModuleFactory;
-import com.epam.datalab.backendapi.resources.ApplicationSettingResource;
-import com.epam.datalab.backendapi.resources.AuditResource;
-import com.epam.datalab.backendapi.resources.BackupResource;
-import com.epam.datalab.backendapi.resources.EndpointResource;
-import com.epam.datalab.backendapi.resources.EnvironmentResource;
-import com.epam.datalab.backendapi.resources.ExploratoryResource;
-import com.epam.datalab.backendapi.resources.GitCredsResource;
-import com.epam.datalab.backendapi.resources.ImageExploratoryResource;
import com.epam.datalab.backendapi.resources.InfrastructureInfoResource;
-import com.epam.datalab.backendapi.resources.InfrastructureTemplateResource;
-import com.epam.datalab.backendapi.resources.KeycloakResource;
-import com.epam.datalab.backendapi.resources.LibExploratoryResource;
-import com.epam.datalab.backendapi.resources.OdahuResource;
-import com.epam.datalab.backendapi.resources.ProjectResource;
-import com.epam.datalab.backendapi.resources.SchedulerJobResource;
-import com.epam.datalab.backendapi.resources.SystemInfoResource;
-import com.epam.datalab.backendapi.resources.UserGroupResource;
-import com.epam.datalab.backendapi.resources.UserRoleResource;
-import com.epam.datalab.backendapi.resources.UserSettingsResource;
-import com.epam.datalab.backendapi.resources.ChangePropertiesResource;
-import com.epam.datalab.backendapi.resources.callback.BackupCallback;
-import com.epam.datalab.backendapi.resources.callback.CheckInactivityCallback;
-import com.epam.datalab.backendapi.resources.callback.ComputationalCallback;
-import com.epam.datalab.backendapi.resources.callback.EnvironmentStatusCallback;
-import com.epam.datalab.backendapi.resources.callback.ExploratoryCallback;
-import com.epam.datalab.backendapi.resources.callback.GitCredsCallback;
-import com.epam.datalab.backendapi.resources.callback.ImageCallback;
-import com.epam.datalab.backendapi.resources.callback.LibraryCallback;
-import com.epam.datalab.backendapi.resources.callback.OdahuCallback;
-import com.epam.datalab.backendapi.resources.callback.ProjectCallback;
-import com.epam.datalab.backendapi.resources.callback.ReuploadKeyCallback;
-import com.epam.datalab.backendapi.schedulers.internal.ManagedScheduler;
-import com.epam.datalab.backendapi.service.EndpointService;
-import com.epam.datalab.backendapi.servlet.guacamole.GuacamoleServlet;
-import com.epam.datalab.cloud.CloudModule;
-import com.epam.datalab.constants.ServiceConsts;
-import com.epam.datalab.migration.mongo.DatalabMongoMigration;
-import com.epam.datalab.mongo.MongoServiceFactory;
-import com.epam.datalab.rest.client.RESTService;
import com.epam.datalab.rest.mappers.DatalabValidationExceptionMapper;
import com.epam.datalab.rest.mappers.JsonProcessingExceptionMapper;
import com.epam.datalab.rest.mappers.ResourceConflictExceptionMapper;
@@ -74,31 +28,68 @@ import com.epam.datalab.rest.mappers.ResourceQuoteReachedExceptionMapper;
import com.epam.datalab.rest.mappers.RuntimeExceptionMapper;
import com.epam.datalab.rest.mappers.ValidationExceptionMapper;
import com.epam.datalab.util.ServiceUtils;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.google.inject.Key;
-import com.google.inject.name.Names;
-import de.thomaskrille.dropwizard_template_config.TemplateConfigBundle;
-import de.thomaskrille.dropwizard_template_config.TemplateConfigBundleConfiguration;
-import io.dropwizard.Application;
-import io.dropwizard.assets.AssetsBundle;
-import io.dropwizard.forms.MultiPartBundle;
-import io.dropwizard.jersey.setup.JerseyEnvironment;
-import io.dropwizard.jetty.BiDiGzipHandler;
-import io.dropwizard.setup.Bootstrap;
-import io.dropwizard.setup.Environment;
import lombok.extern.slf4j.Slf4j;
-import org.eclipse.jetty.server.Handler;
-import org.eclipse.jetty.server.Server;
-import org.eclipse.jetty.server.handler.HandlerWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
/**
* Self Service based on Dropwizard application.
*/
@Slf4j
-public class SelfServiceApplication extends Application<SelfServiceApplicationConfiguration> {
+@SpringBootApplication
+public class SelfServiceApplication implements ApplicationRunner{
public static final String GUACAMOLE_SERVLET_PATH = "/api/tunnel";
- private static Injector appInjector;
+
+ //TODO: read about obtain third party objects:
+ //Try in configuration class create the getters with bean annotation
+ //
+// @Autowired
+// private JsonProcessingExceptionMapper jsonProcessingExceptionMapper;
+
+// @Autowired
+// private ResourceConflictExceptionMapper resourceConflictExceptionMapper;
+//
+// @Autowired
+// private ResourceNotFoundExceptionMapper resourceNotFoundExceptionMapper;
+//
+// @Autowired
+// private DatalabValidationExceptionMapper datalabValidationExceptionMapper;
+//
+// @Autowired
+// private ResourceQuoteReachedExceptionMapper resourceQuoteReachedExceptionMapper;
+//
+// @Autowired
+// private RuntimeExceptionMapper runtimeExceptionMapper;
+//
+// @Autowired
+// private ValidationExceptionMapper validationExceptionMapper;
+//
+// @Autowired
+// private InfrastructureInfoResource infrastructureInfoResource;
+
+ //TODO: thrown Exception class has been removed. See the distinguish.
+ //TODO: Double check with Keycloak barear filter impl!!!
+
+
+ public static void main(String[] args) {
+ if (ServiceUtils.printAppVersion(SelfServiceApplication.class, args)) {
+ return;
+ }
+ new SpringApplicationBuilder()
+ .sources(SelfServiceApplication.class)
+ .build()
+ .run(args);
+ }
+
+ @Override
+ public void run(ApplicationArguments arg){
+
+ }
+
+ /*private static Injector appInjector;
public static Injector getInjector() {
return appInjector;
@@ -219,5 +210,5 @@ public class SelfServiceApplication extends Application<SelfServiceApplicationCo
new DatalabMongoMigration(mongoFactory.getHost(), mongoFactory.getPort(), mongoFactory.getUsername(),
mongoFactory.getPassword(), mongoFactory.getDatabase()).migrate();
}
-
+*/
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/conf/KeycloakConfiguration.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/conf/KeycloakConfiguration.java
index a4d79ea..7f321f5 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/conf/KeycloakConfiguration.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/conf/KeycloakConfiguration.java
@@ -1,27 +1,53 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
package com.epam.datalab.backendapi.conf;
-import lombok.Data;
+import org.keycloak.adapters.KeycloakConfigResolver;
+import org.keycloak.adapters.springboot.KeycloakSpringBootConfigResolver;
+import org.keycloak.adapters.springsecurity.KeycloakSecurityComponents;
+import org.keycloak.adapters.springsecurity.authentication.KeycloakAuthenticationProvider;
+import org.keycloak.adapters.springsecurity.config.KeycloakWebSecurityConfigurerAdapter;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.FilterType;
+import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
+import org.springframework.security.core.authority.mapping.SimpleAuthorityMapper;
+import org.springframework.security.core.session.SessionRegistryImpl;
+import org.springframework.security.web.authentication.session.RegisterSessionAuthenticationStrategy;
+import org.springframework.security.web.authentication.session.SessionAuthenticationStrategy;
+
+@Configuration
+@ComponentScan(
+ basePackageClasses = KeycloakSecurityComponents.class,
+ excludeFilters = @ComponentScan.Filter(type = FilterType.REGEX, pattern = "org.keycloak.adapters.springsecurity.management.HttpSessionManager"))
+public class KeycloakConfiguration extends KeycloakWebSecurityConfigurerAdapter {
+
+ @Autowired
+ public void configureGlobal(AuthenticationManagerBuilder auth) {
+ KeycloakAuthenticationProvider keycloakAuthenticationProvider = keycloakAuthenticationProvider();
+ keycloakAuthenticationProvider.setGrantedAuthoritiesMapper(new SimpleAuthorityMapper());
+ auth.authenticationProvider(keycloakAuthenticationProvider);
+ }
+
+ @Bean
+ public KeycloakConfigResolver keycloakConfigResolver() {
+ return new KeycloakSpringBootConfigResolver();
+ }
+
+ @Bean
+ @Override
+ protected SessionAuthenticationStrategy sessionAuthenticationStrategy() {
+ return new RegisterSessionAuthenticationStrategy(new SessionRegistryImpl());
+ }
-@Data
-public class KeycloakConfiguration extends de.ahus1.keycloak.dropwizard.KeycloakConfiguration {
- private String redirectUri;
+ @Override
+ protected void configure(HttpSecurity http) throws Exception {
+ super.configure(http);
+ http
+ .anonymous().disable()
+ .authorizeRequests()
+ .anyRequest()
+ .authenticated();
+ }
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/dao/EnvDAO.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/dao/EnvDAO.java
index 1e03de1..f660b05 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/dao/EnvDAO.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/dao/EnvDAO.java
@@ -475,7 +475,7 @@ public class EnvDAO extends BaseDAO {
try {
// Send post request to provisioning service to terminate spot EMR.
ComputationalResourceAws computational = new ComputationalResourceAws();
- SelfServiceApplication.getInjector().injectMembers(computational);
+ //SelfServiceApplication.getInjector().injectMembers(computational);
UserInfo ui = new UserInfo(user, accessToken);
computational.terminate(ui, project, exploratoryName, computationalName);
} catch (Exception e) {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/dropwizard/bundles/DatalabKeycloakBundle.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/dropwizard/bundles/DatalabKeycloakBundle.java
deleted file mode 100644
index 8b1a182..0000000
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/dropwizard/bundles/DatalabKeycloakBundle.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package com.epam.datalab.backendapi.dropwizard.bundles;
-
-import com.epam.datalab.auth.UserInfo;
-import com.epam.datalab.backendapi.auth.KeycloakAuthenticator;
-import com.epam.datalab.backendapi.auth.SelfServiceSecurityAuthorizer;
-import com.epam.datalab.backendapi.conf.SelfServiceApplicationConfiguration;
-import com.google.inject.Inject;
-import de.ahus1.keycloak.dropwizard.KeycloakBundle;
-import de.ahus1.keycloak.dropwizard.KeycloakConfiguration;
-import io.dropwizard.auth.Authenticator;
-import io.dropwizard.auth.Authorizer;
-
-import java.security.Principal;
-
-public class DatalabKeycloakBundle extends KeycloakBundle<SelfServiceApplicationConfiguration> {
-
- @Inject
- private KeycloakAuthenticator authenticator;
-
- @Override
- protected KeycloakConfiguration getKeycloakConfiguration(SelfServiceApplicationConfiguration configuration) {
- return configuration.getKeycloakConfiguration();
- }
-
- @Override
- protected Class<? extends Principal> getUserClass() {
- return UserInfo.class;
- }
-
- @Override
- protected Authorizer createAuthorizer() {
- return new SelfServiceSecurityAuthorizer();
- }
-
- @Override
- protected Authenticator createAuthenticator(KeycloakConfiguration configuration) {
- return new KeycloakAuthenticator(configuration);
- }
-}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/healthcheck/MongoHealthCheck.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/healthcheck/MongoHealthCheck.java
index 20c049b..b4aabdd 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/healthcheck/MongoHealthCheck.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/healthcheck/MongoHealthCheck.java
@@ -23,12 +23,13 @@ import com.codahale.metrics.health.HealthCheck;
import com.epam.datalab.mongo.MongoService;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
@Slf4j
public class MongoHealthCheck extends HealthCheck {
private final MongoService mongoService;
- @Inject
+ @Autowired
public MongoHealthCheck(MongoService mongoService) {
this.mongoService = mongoService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/AuditInterceptor.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/AuditInterceptor.java
index 94a7068..ee2f00d 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/AuditInterceptor.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/AuditInterceptor.java
@@ -32,10 +32,12 @@ import com.epam.datalab.backendapi.domain.AuditResourceTypeEnum;
import com.epam.datalab.backendapi.service.AuditService;
import com.epam.datalab.exceptions.DatalabException;
import com.google.inject.Inject;
+import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
@@ -45,9 +47,9 @@ import java.util.stream.IntStream;
@Slf4j
public class AuditInterceptor implements MethodInterceptor {
- @Inject
+ @Autowired
private AuditService auditService;
- @Inject
+ @Autowired
private SelfServiceApplicationConfiguration configuration;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/BudgetLimitInterceptor.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/BudgetLimitInterceptor.java
index 421d37d..ed4da4e 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/BudgetLimitInterceptor.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/BudgetLimitInterceptor.java
@@ -27,6 +27,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
+import org.springframework.beans.factory.annotation.Autowired;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
@@ -35,9 +36,9 @@ import java.util.stream.IntStream;
@Slf4j
public class BudgetLimitInterceptor implements MethodInterceptor {
- @Inject
+ @Autowired
private BillingDAO billingDAO;
- @Inject
+ @Autowired
private BillingService billingService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/ProjectAdminInterceptor.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/ProjectAdminInterceptor.java
index f978153..f22c81d 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/ProjectAdminInterceptor.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/interceptor/ProjectAdminInterceptor.java
@@ -30,6 +30,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
+import org.springframework.beans.factory.annotation.Autowired;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
@@ -38,10 +39,10 @@ import java.util.stream.IntStream;
@Slf4j
public class ProjectAdminInterceptor implements MethodInterceptor {
- @Inject
+ @Autowired
private ProjectService projectService;
- @Override
+ @Autowired
public Object invoke(MethodInvocation mi) throws Throwable {
if (grantAccess(mi)) {
return mi.proceed();
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ApplicationSettingResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ApplicationSettingResource.java
index 40362bc..48c2155 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ApplicationSettingResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ApplicationSettingResource.java
@@ -23,6 +23,7 @@ import com.epam.datalab.backendapi.service.ApplicationSettingService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.validation.constraints.Min;
@@ -43,7 +44,7 @@ public class ApplicationSettingResource {
private final ApplicationSettingService settingService;
- @Inject
+ @Autowired
public ApplicationSettingResource(ApplicationSettingService settingService) {
this.settingService = settingService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/AuditResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/AuditResource.java
index aa04fd0..769cb33 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/AuditResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/AuditResource.java
@@ -25,6 +25,7 @@ import com.epam.datalab.backendapi.service.AuditService;
import com.epam.datalab.model.StringList;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.validation.Valid;
import javax.ws.rs.Consumes;
@@ -40,7 +41,7 @@ import javax.ws.rs.core.Response;
public class AuditResource {
private final AuditService auditService;
- @Inject
+ @Autowired
public AuditResource(AuditService auditService) {
this.auditService = auditService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/BackupResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/BackupResource.java
index 5d60ddb..1aa4224 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/BackupResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/BackupResource.java
@@ -28,6 +28,7 @@ import com.epam.datalab.dto.backup.EnvBackupDTO;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.validation.Valid;
@@ -51,7 +52,7 @@ public class BackupResource {
private final RequestBuilder requestBuilder;
private final RequestId requestId;
- @Inject
+ @Autowired
public BackupResource(BackupService backupService, RequestBuilder requestBuilder, RequestId requestId) {
this.backupService = backupService;
this.requestBuilder = requestBuilder;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java
index 048b099..502e45e 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ChangePropertiesResource.java
@@ -30,6 +30,7 @@ import com.epam.datalab.properties.RestartForm;
import com.epam.datalab.properties.YmlDTO;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.inject.Inject;
import javax.ws.rs.*;
@@ -46,7 +47,7 @@ public class ChangePropertiesResource implements ChangePropertiesConst {
private final ExternalChangeProperties externalChangeProperties;
private final String deployedOn;
- @Inject
+ @Autowired
public ChangePropertiesResource(EndpointDAO endpointDAO, ExternalChangeProperties externalChangeProperties,
SelfServiceApplicationConfiguration selfServiceApplicationConfiguration) {
this.endpointDAO = endpointDAO;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EndpointResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EndpointResource.java
index 48a1061..c8d24ca 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EndpointResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EndpointResource.java
@@ -32,6 +32,7 @@ import io.swagger.v3.oas.annotations.headers.Header;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.validation.Valid;
@@ -56,7 +57,7 @@ public class EndpointResource {
@Context
private UriInfo uriInfo;
- @Inject
+ @Autowired
public EndpointResource(EndpointService endpointService) {
this.endpointService = endpointService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EnvironmentResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EnvironmentResource.java
index b4b1418..3b27c79 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EnvironmentResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/EnvironmentResource.java
@@ -25,6 +25,7 @@ import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
import org.hibernate.validator.constraints.NotEmpty;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.ws.rs.Consumes;
@@ -43,7 +44,7 @@ public class EnvironmentResource {
private EnvironmentService environmentService;
- @Inject
+ @Autowired
public EnvironmentResource(EnvironmentService environmentService) {
this.environmentService = environmentService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ExploratoryResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ExploratoryResource.java
index 39bfb89..24656cf 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ExploratoryResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ExploratoryResource.java
@@ -32,6 +32,7 @@ import com.epam.datalab.rest.contracts.ExploratoryAPI;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@@ -51,7 +52,7 @@ public class ExploratoryResource implements ExploratoryAPI {
private final ExploratoryService exploratoryService;
- @Inject
+ @Autowired
public ExploratoryResource(ExploratoryService exploratoryService) {
this.exploratoryService = exploratoryService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/GitCredsResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/GitCredsResource.java
index 2a9cf43..55160d2 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/GitCredsResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/GitCredsResource.java
@@ -26,6 +26,7 @@ import com.epam.datalab.rest.contracts.ExploratoryAPI;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@@ -48,7 +49,7 @@ public class GitCredsResource implements ExploratoryAPI {
private final GitCredentialService gitCredentialService;
- @Inject
+ @Autowired
public GitCredsResource(GitCredentialService gitCredentialService) {
this.gitCredentialService = gitCredentialService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
index 95dcdb4..eb50ae9 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
@@ -27,6 +27,7 @@ import com.epam.datalab.backendapi.service.ImageExploratoryService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@@ -58,7 +59,7 @@ public class ImageExploratoryResource {
private final ImageExploratoryService imageExploratoryService;
private final RequestId requestId;
- @Inject
+ @Autowired
public ImageExploratoryResource(ImageExploratoryService imageExploratoryService, RequestId requestId) {
this.imageExploratoryService = imageExploratoryService;
this.requestId = requestId;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/InfrastructureInfoResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/InfrastructureInfoResource.java
index c477c1e..5cbba51 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/InfrastructureInfoResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/InfrastructureInfoResource.java
@@ -26,6 +26,8 @@ import com.epam.datalab.backendapi.service.InfrastructureInfoService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
import javax.ws.rs.Consumes;
import javax.ws.rs.DefaultValue;
@@ -48,7 +50,7 @@ public class InfrastructureInfoResource {
private final InfrastructureInfoService infrastructureInfoService;
- @Inject
+ @Autowired
public InfrastructureInfoResource(InfrastructureInfoService infrastructureInfoService) {
this.infrastructureInfoService = infrastructureInfoService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/KeycloakResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/KeycloakResource.java
index 6e44494..3ee5316 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/KeycloakResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/KeycloakResource.java
@@ -32,6 +32,8 @@ import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
import org.keycloak.representations.AccessTokenResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.annotation.AuthenticationPrincipal;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
@@ -61,25 +63,29 @@ public class KeycloakResource {
private final String redirectUri;
private final boolean defaultAccess;
- @Inject
+ @Autowired
public KeycloakResource(SecurityService securityService, SelfServiceApplicationConfiguration configuration,
SecurityDAO securityDAO, KeycloakService keycloakService) {
this.securityDAO = securityDAO;
this.defaultAccess = configuration.getRoleDefaultAccess();
final KeycloakConfiguration keycloakConfiguration = configuration.getKeycloakConfiguration();
- this.redirectUri = keycloakConfiguration.getRedirectUri();
+ //this.redirectUri = keycloakConfiguration.getRedirectUri();
+ this.redirectUri = "";
this.securityService = securityService;
this.keycloakService = keycloakService;
- loginUri = format(LOGIN_URI_FORMAT,
- keycloakConfiguration.getAuthServerUrl(),
- keycloakConfiguration.getRealm(),
- keycloakConfiguration.getResource(),
- redirectUri);
- logoutUri = format(KEYCLOAK_LOGOUT_URI_FORMAT,
- keycloakConfiguration.getAuthServerUrl(),
- keycloakConfiguration.getRealm(),
- redirectUri);
+// loginUri = format(LOGIN_URI_FORMAT,
+//
+// keycloakConfiguration.getAuthServerUrl(),
+// keycloakConfiguration.getRealm(),
+// keycloakConfiguration.getResource(),
+// redirectUri);
+// logoutUri = format(KEYCLOAK_LOGOUT_URI_FORMAT,
+// keycloakConfiguration.getAuthServerUrl(),
+// keycloakConfiguration.getRealm(),
+// redirectUri);
+ loginUri = "";
+ logoutUri = "";
}
@GET
@@ -97,7 +103,7 @@ public class KeycloakResource {
@POST
@Path("/authorize")
- public Response authorize(@Auth UserInfo userInfo) {
+ public Response authorize(@AuthenticationPrincipal UserInfo userInfo) {
UserRoles.initialize(securityDAO, defaultAccess);
return Response.ok().build();
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/LibExploratoryResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/LibExploratoryResource.java
index eb16310..b66f20c 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/LibExploratoryResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/LibExploratoryResource.java
@@ -38,6 +38,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.bson.Document;
import org.hibernate.validator.constraints.NotBlank;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@@ -66,7 +67,7 @@ public class LibExploratoryResource {
private final ExploratoryDAO exploratoryDAO;
private final LibraryService libraryService;
- @Inject
+ @Autowired
public LibExploratoryResource(ExploratoryDAO exploratoryDAO, LibraryService libraryService,
ExternalLibraryService externalLibraryService) {
this.exploratoryDAO = exploratoryDAO;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/OdahuResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/OdahuResource.java
index 4989893..6e67415 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/OdahuResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/OdahuResource.java
@@ -26,6 +26,7 @@ import com.epam.datalab.backendapi.service.OdahuService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import io.swagger.v3.oas.annotations.Parameter;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.validation.Valid;
@@ -46,7 +47,7 @@ public class OdahuResource {
private final OdahuService odahuService;
- @Inject
+ @Autowired
public OdahuResource(OdahuService odahuService) {
this.odahuService = odahuService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ProjectResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ProjectResource.java
index 040b4f6..018a4bd 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ProjectResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ProjectResource.java
@@ -40,6 +40,8 @@ import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.core.annotation.AuthenticationPrincipal;
import javax.annotation.security.RolesAllowed;
import javax.validation.Valid;
@@ -69,7 +71,7 @@ public class ProjectResource {
@Context
private UriInfo uriInfo;
- @Inject
+ @Autowired
public ProjectResource(ProjectService projectService, AccessKeyService keyService) {
this.projectService = projectService;
this.keyService = keyService;
@@ -90,7 +92,7 @@ public class ProjectResource {
@POST
@Consumes(MediaType.APPLICATION_JSON)
@RolesAllowed("/api/project/create")
- public Response createProject(@Parameter(hidden = true) @Auth UserInfo userInfo,
+ public Response createProject(@Parameter(hidden = true) @AuthenticationPrincipal UserInfo userInfo,
@Valid CreateProjectDTO projectDTO) {
log.info("Trying to create project: {}", projectDTO);
List<ProjectEndpointDTO> projectEndpointDTOS = projectDTO.getEndpoints()
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SchedulerJobResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SchedulerJobResource.java
index 0ecf157..28c7a5a 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SchedulerJobResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SchedulerJobResource.java
@@ -27,6 +27,7 @@ import com.epam.datalab.dto.SchedulerJobDTO;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
@@ -48,7 +49,7 @@ public class SchedulerJobResource {
private final SchedulerJobService schedulerJobService;
- @Inject
+ @Autowired
public SchedulerJobResource(SchedulerJobService schedulerJobService) {
this.schedulerJobService = schedulerJobService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SystemInfoResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SystemInfoResource.java
index 0c20dcb..21ea3d8 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SystemInfoResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/SystemInfoResource.java
@@ -24,6 +24,7 @@ import com.epam.datalab.backendapi.service.SystemInfoService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.ws.rs.GET;
@@ -40,7 +41,7 @@ public class SystemInfoResource {
private final SystemInfoService systemInfoService;
- @Inject
+ @Autowired
public SystemInfoResource(SystemInfoService systemInfoService) {
this.systemInfoService = systemInfoService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserGroupResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserGroupResource.java
index b8d92b6..3d21bda 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserGroupResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserGroupResource.java
@@ -25,6 +25,7 @@ import com.epam.datalab.backendapi.service.UserGroupService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.validation.Valid;
@@ -47,7 +48,7 @@ public class UserGroupResource {
private final UserGroupService userGroupService;
- @Inject
+ @Autowired
public UserGroupResource(UserGroupService userGroupService) {
this.userGroupService = userGroupService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserRoleResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserRoleResource.java
index b14d94c..0771f2e 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserRoleResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserRoleResource.java
@@ -24,6 +24,7 @@ import com.epam.datalab.backendapi.service.UserRoleService;
import com.google.inject.Inject;
import io.dropwizard.auth.Auth;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.ws.rs.Consumes;
@@ -43,7 +44,7 @@ public class UserRoleResource {
private final UserRoleService userRoleService;
- @Inject
+ @Autowired
public UserRoleResource(UserRoleService roleService) {
this.userRoleService = roleService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserSettingsResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserSettingsResource.java
index f74fd4e..1bd2ebc 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserSettingsResource.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/UserSettingsResource.java
@@ -28,6 +28,7 @@ import org.hibernate.validator.constraints.NotBlank;
import org.hibernate.validator.constraints.NotEmpty;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.security.RolesAllowed;
import javax.validation.Valid;
@@ -50,7 +51,7 @@ public class UserSettingsResource {
private final UserSettingService userSettingService;
- @Inject
+ @Autowired
public UserSettingsResource(UserSettingService userSettingService) {
this.userSettingService = userSettingService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/BackupCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/BackupCallback.java
index 5460625..2046c8b 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/BackupCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/BackupCallback.java
@@ -24,6 +24,7 @@ import com.epam.datalab.backendapi.service.BackupService;
import com.epam.datalab.dto.backup.EnvBackupStatusDTO;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -38,10 +39,10 @@ import javax.ws.rs.core.UriInfo;
@Slf4j
public class BackupCallback {
- @Inject
+ @Autowired
private BackupService backupService;
- @Inject
+ @Autowired
private RequestId requestId;
@Context
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/CheckInactivityCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/CheckInactivityCallback.java
index 32b0ed8..ca80ac0 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/CheckInactivityCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/CheckInactivityCallback.java
@@ -24,6 +24,7 @@ import com.epam.datalab.backendapi.service.InactivityService;
import com.epam.datalab.dto.computational.CheckInactivityStatusDTO;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -40,9 +41,9 @@ import static java.time.ZoneId.systemDefault;
@Slf4j
public class CheckInactivityCallback {
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private InactivityService inactivityService;
@POST
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ComputationalCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ComputationalCallback.java
index 74c5910..2e93547 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ComputationalCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ComputationalCallback.java
@@ -31,6 +31,7 @@ import com.epam.datalab.exceptions.DatalabException;
import com.epam.datalab.rest.contracts.ApiCallbacks;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -46,15 +47,15 @@ import java.util.Date;
@Slf4j
public class ComputationalCallback {
- @Inject
+ @Autowired
private ComputationalDAO computationalDAO;
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private SecurityService securityService;
- @Inject
+ @Autowired
private ReuploadKeyService reuploadKeyService;
- @Inject
+ @Autowired
private ComputationalService computationalService;
/**
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/EnvironmentStatusCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/EnvironmentStatusCallback.java
index 4a9c0d0..d6d0fc1 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/EnvironmentStatusCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/EnvironmentStatusCallback.java
@@ -28,6 +28,7 @@ import com.epam.datalab.exceptions.DatalabException;
import com.epam.datalab.rest.contracts.ApiCallbacks;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -45,7 +46,7 @@ public class EnvironmentStatusCallback {
private final RequestId requestId;
private final EnvironmentService environmentService;
- @Inject
+ @Autowired
public EnvironmentStatusCallback(RequestId requestId, EnvironmentService environmentService) {
this.requestId = requestId;
this.environmentService = environmentService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ExploratoryCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ExploratoryCallback.java
index 1e5f8fb..e2d71db 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ExploratoryCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ExploratoryCallback.java
@@ -32,6 +32,7 @@ import com.epam.datalab.exceptions.DatalabException;
import com.epam.datalab.rest.contracts.ApiCallbacks;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -56,17 +57,17 @@ public class ExploratoryCallback {
private static final String USER_INSTANCE_NOT_EXIST_MSG = "User instance with exploratory name %s for user %s " +
"doesn't exist";
- @Inject
+ @Autowired
private ExploratoryDAO exploratoryDAO;
- @Inject
+ @Autowired
private ComputationalDAO computationalDAO;
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private SecurityService securityService;
- @Inject
+ @Autowired
private ReuploadKeyService reuploadKeyService;
- @Inject
+ @Autowired
private ExploratoryService exploratoryService;
/**
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/GitCredsCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/GitCredsCallback.java
index 95ea583..64d9779 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/GitCredsCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/GitCredsCallback.java
@@ -25,6 +25,7 @@ import com.epam.datalab.dto.exploratory.ExploratoryStatusDTO;
import com.epam.datalab.rest.contracts.ApiCallbacks;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -39,7 +40,7 @@ import javax.ws.rs.core.Response;
@Slf4j
public class GitCredsCallback {
- @Inject
+ @Autowired
private RequestId requestId;
/**
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ImageCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ImageCallback.java
index 587c8ea..8a0a64f 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ImageCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ImageCallback.java
@@ -27,6 +27,7 @@ import com.epam.datalab.dto.exploratory.ImageStatus;
import com.epam.datalab.model.exploratory.Image;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -41,9 +42,9 @@ import javax.ws.rs.core.Response;
@Slf4j
public class ImageCallback {
- @Inject
+ @Autowired
private ImageExploratoryService imageExploratoryService;
- @Inject
+ @Autowired
private RequestId requestId;
@POST
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/LibraryCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/LibraryCallback.java
index e3d69ad..88a2c88 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/LibraryCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/LibraryCallback.java
@@ -28,6 +28,7 @@ import com.epam.datalab.dto.exploratory.LibListStatusDTO;
import com.epam.datalab.exceptions.DatalabException;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -42,9 +43,9 @@ import javax.ws.rs.core.Response;
@Slf4j
public class LibraryCallback {
- @Inject
+ @Autowired
private ExploratoryLibDAO libraryDAO;
- @Inject
+ @Autowired
private RequestId requestId;
/**
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/OdahuCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/OdahuCallback.java
index 8696fad..6ffdaa8 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/OdahuCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/OdahuCallback.java
@@ -25,6 +25,7 @@ import com.epam.datalab.dto.UserInstanceStatus;
import com.epam.datalab.dto.base.odahu.OdahuResult;
import com.epam.datalab.exceptions.DatalabException;
import com.google.inject.Inject;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -40,7 +41,7 @@ public class OdahuCallback {
private final OdahuService odahuService;
private final RequestId requestId;
- @Inject
+ @Autowired
public OdahuCallback(OdahuService odahuService, RequestId requestId) {
this.odahuService = odahuService;
this.requestId = requestId;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java
index 23459ea..b8ccd7a 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ProjectCallback.java
@@ -30,6 +30,7 @@ import com.epam.datalab.dto.imagemetadata.EdgeGPU;
import com.epam.datalab.exceptions.DatalabException;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -49,7 +50,7 @@ public class ProjectCallback {
private final RequestId requestId;
private final GpuDAO gpuDAO;
- @Inject
+ @Autowired
public ProjectCallback(ProjectDAO projectDAO, EndpointDAO endpointDAO, ExploratoryService exploratoryService, RequestId requestId,
GpuDAO gpuDAO) {
this.projectDAO = projectDAO;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ReuploadKeyCallback.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ReuploadKeyCallback.java
index de371d8..3de4f60 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ReuploadKeyCallback.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/callback/ReuploadKeyCallback.java
@@ -24,6 +24,7 @@ import com.epam.datalab.backendapi.service.ReuploadKeyService;
import com.epam.datalab.dto.reuploadkey.ReuploadKeyStatusDTO;
import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
@@ -38,9 +39,9 @@ import javax.ws.rs.core.UriInfo;
@Slf4j
public class ReuploadKeyCallback {
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private ReuploadKeyService reuploadKeyService;
@Context
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckApplicationQuoteScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckApplicationQuoteScheduler.java
index b55ebcc..da3b64f 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckApplicationQuoteScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckApplicationQuoteScheduler.java
@@ -26,13 +26,14 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
@Scheduled("checkQuoteScheduler")
@Slf4j
public class CheckApplicationQuoteScheduler implements Job {
- @Inject
+ @Autowired
private BillingDAO billingDAO;
- @Inject
+ @Autowired
private EnvironmentService environmentService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInactivityScheduledJob.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInactivityScheduledJob.java
index e32b15f..1393873 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInactivityScheduledJob.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInactivityScheduledJob.java
@@ -24,6 +24,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
/**
* There realized integration with Quartz scheduler framework and defined check cluster inactivity scheduler job which
@@ -35,7 +36,7 @@ import org.quartz.JobExecutionContext;
@Scheduled("inactivity")
public class CheckInactivityScheduledJob implements Job {
- @Inject
+ @Autowired
private InactivityService inactivityService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java
index ab11001..b24be88 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckInfrastructureStatusScheduler.java
@@ -39,6 +39,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.*;
import java.util.stream.Collectors;
@@ -61,7 +62,7 @@ public class CheckInfrastructureStatusScheduler implements Job {
private static final String AWS_EMR_CLUSTER = "AWS EMR cluster";
- @Inject
+ @Autowired
public CheckInfrastructureStatusScheduler(InfrastructureInfoService infrastructureInfoService, SecurityService securityService,
EndpointService endpointService, ExploratoryDAO exploratoryDAO, ProjectService projectService) {
this.infrastructureInfoService = infrastructureInfoService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckProjectQuoteScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckProjectQuoteScheduler.java
index bc16fce..3b02597 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckProjectQuoteScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckProjectQuoteScheduler.java
@@ -28,16 +28,17 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
@Scheduled("checkProjectQuoteScheduler")
@Slf4j
public class CheckProjectQuoteScheduler implements Job {
- @Inject
+ @Autowired
private BillingService billingService;
- @Inject
+ @Autowired
private EnvironmentService environmentService;
- @Inject
+ @Autowired
private ProjectService projectService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckUserQuoteScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckUserQuoteScheduler.java
index c470763..3c83417 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckUserQuoteScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/CheckUserQuoteScheduler.java
@@ -27,14 +27,15 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
@Scheduled("checkUserQuoteScheduler")
@Slf4j
public class CheckUserQuoteScheduler implements Job {
- @Inject
+ @Autowired
private BillingDAO billingDAO;
- @Inject
+ @Autowired
private EnvironmentService environmentService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/billing/BillingScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/billing/BillingScheduler.java
index fbc369c..ccc793c 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/billing/BillingScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/billing/BillingScheduler.java
@@ -26,6 +26,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
@Scheduled("billingScheduler")
@Slf4j
@@ -34,7 +35,7 @@ public class BillingScheduler implements Job {
private final BillingService billingService;
private final SecurityService securityService;
- @Inject
+ @Autowired
public BillingScheduler(BillingService billingService, SecurityService securityService) {
this.billingService = billingService;
this.securityService = securityService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StartComputationalJob.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StartComputationalJob.java
index a554315..0215d3d 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StartComputationalJob.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StartComputationalJob.java
@@ -25,6 +25,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
/**
* There realized integration with Quartz scheduler framework and defined start computational resource scheduler job
@@ -34,7 +35,7 @@ import org.quartz.JobExecutionContext;
@Scheduled("startComputationalScheduler")
public class StartComputationalJob implements Job {
- @Inject
+ @Autowired
private SchedulerJobService schedulerJobService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StopComputationalJob.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StopComputationalJob.java
index fb94af5..fd6307b 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StopComputationalJob.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/StopComputationalJob.java
@@ -24,6 +24,7 @@ import com.epam.datalab.backendapi.service.SchedulerJobService;
import com.google.inject.Inject;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
/**
* There realized integration with Quartz scheduler framework and defined stop computational resource scheduler job
@@ -32,7 +33,7 @@ import org.quartz.JobExecutionContext;
@Scheduled("stopComputationalScheduler")
public class StopComputationalJob implements Job {
- @Inject
+ @Autowired
private SchedulerJobService schedulerJobService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/TerminateComputationalJob.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/TerminateComputationalJob.java
index c69b37a..6e22ad5 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/TerminateComputationalJob.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/computational/TerminateComputationalJob.java
@@ -24,12 +24,13 @@ import com.epam.datalab.backendapi.service.SchedulerJobService;
import com.google.inject.Inject;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
@Scheduled("terminateComputationalScheduler")
public class TerminateComputationalJob implements Job {
private final SchedulerJobService schedulerJobService;
- @Inject
+ @Autowired
public TerminateComputationalJob(SchedulerJobService schedulerJobService) {
this.schedulerJobService = schedulerJobService;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/endpoint/CheckEndpointStatusScheduler.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/endpoint/CheckEndpointStatusScheduler.java
index f88050a..4f30fbf 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/endpoint/CheckEndpointStatusScheduler.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/endpoint/CheckEndpointStatusScheduler.java
@@ -28,14 +28,15 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
@Scheduled("checkEndpointStatusScheduler")
@Slf4j
public class CheckEndpointStatusScheduler implements Job {
- @Inject
+ @Autowired
private EndpointService endpointService;
- @Inject
+ @Autowired
private SecurityService securityService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StartExploratoryJob.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StartExploratoryJob.java
index a3c732b..d0a95b4 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StartExploratoryJob.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StartExploratoryJob.java
@@ -25,6 +25,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
/**
* There realized integration with Quartz scheduler framework and defined start exploratory scheduler job which
@@ -34,7 +35,7 @@ import org.quartz.JobExecutionContext;
@Scheduled("startExploratoryScheduler")
public class StartExploratoryJob implements Job {
- @Inject
+ @Autowired
private SchedulerJobService schedulerJobService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StopExploratoryJob.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StopExploratoryJob.java
index f3fdb63..e4b0d2b 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StopExploratoryJob.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/schedulers/exploratory/StopExploratoryJob.java
@@ -25,6 +25,7 @@ import com.google.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
+import org.springframework.beans.factory.annotation.Autowired;
/**
* There realized integration with Quartz scheduler framework and defined stop exploratory scheduler job which
@@ -34,7 +35,7 @@ import org.quartz.JobExecutionContext;
@Scheduled("stopExploratoryScheduler")
public class StopExploratoryJob implements Job {
- @Inject
+ @Autowired
private SchedulerJobService schedulerJobService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ApplicationSettingServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ApplicationSettingServiceImpl.java
index 1e28bc1..45202bf 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ApplicationSettingServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ApplicationSettingServiceImpl.java
@@ -22,11 +22,12 @@ package com.epam.datalab.backendapi.service;
import com.epam.datalab.backendapi.dao.MongoSetting;
import com.epam.datalab.backendapi.dao.SettingsDAO;
import com.google.inject.Inject;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.Map;
public class ApplicationSettingServiceImpl implements ApplicationSettingService {
- @Inject
+ @Autowired
private SettingsDAO settingsDAO;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/KeycloakServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/KeycloakServiceImpl.java
index f418e65..dac6376 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/KeycloakServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/KeycloakServiceImpl.java
@@ -19,15 +19,17 @@
package com.epam.datalab.backendapi.service;
+import com.epam.datalab.backendapi.conf.KeycloakConfiguration;
import com.epam.datalab.backendapi.conf.SelfServiceApplicationConfiguration;
import com.epam.datalab.backendapi.dao.SecurityDAO;
import com.epam.datalab.backendapi.util.KeycloakUtil;
import com.epam.datalab.exceptions.DatalabException;
-import com.google.inject.Inject;
-import de.ahus1.keycloak.dropwizard.KeycloakConfiguration;
import lombok.extern.slf4j.Slf4j;
import org.glassfish.jersey.internal.util.Base64;
+import org.keycloak.KeycloakPrincipal;
+import org.keycloak.KeycloakSecurityContext;
import org.keycloak.representations.AccessTokenResponse;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.Entity;
@@ -44,13 +46,15 @@ public class KeycloakServiceImpl implements KeycloakService {
private final KeycloakConfiguration conf;
private final SecurityDAO securityDAO;
private final String redirectUri;
+ private Object principal;
- @Inject
+ @Autowired
public KeycloakServiceImpl(Client httpClient, SelfServiceApplicationConfiguration conf, SecurityDAO securityDAO) {
this.httpClient = httpClient;
this.conf = conf.getKeycloakConfiguration();
this.securityDAO = securityDAO;
- this.redirectUri = conf.getKeycloakConfiguration().getRedirectUri();
+ //this.redirectUri = conf.getKeycloakConfiguration().getRedirectUri();
+ this.redirectUri = "";
}
@Override
@@ -80,9 +84,13 @@ public class KeycloakServiceImpl implements KeycloakService {
}
private AccessTokenResponse requestToken(Form requestForm) {
- final String credentials = Base64.encodeAsString(String.join(":", conf.getResource(),
- String.valueOf(conf.getCredentials().get("secret"))));
- String url = conf.getAuthServerUrl() + String.format(URI, conf.getRealm());
+ KeycloakPrincipal<KeycloakSecurityContext> kp = (KeycloakPrincipal<KeycloakSecurityContext>) principal;
+ final String credentials = Base64.encodeAsString(String.join(":", kp.getKeycloakSecurityContext().getIdTokenString(),
+ String.valueOf(kp.getKeycloakSecurityContext().getToken().getResourceAccess().get("secret"))));
+ kp.getKeycloakSecurityContext().getToken().getResourceAccess("ds");
+
+ //String url = conf.getAuthServerUrl() + String.format(URI, kp.getKeycloakSecurityContext().getRealm());
+ String url = "0";
String header = "Basic " + credentials;
final Response response =
httpClient.target(url)
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/SecurityServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/SecurityServiceImpl.java
index cde3edf..8c7584a 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/SecurityServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/SecurityServiceImpl.java
@@ -27,13 +27,14 @@ import com.epam.datalab.backendapi.util.KeycloakUtil;
import com.epam.datalab.exceptions.DatalabException;
import com.google.inject.Inject;
import org.keycloak.representations.AccessTokenResponse;
+import org.springframework.beans.factory.annotation.Autowired;
public class SecurityServiceImpl implements SecurityService {
private final KeycloakService keycloakService;
private final SecurityDAO securityDAO;
private final AuditService auditService;
- @Inject
+ @Autowired
public SecurityServiceImpl(KeycloakService keycloakService, SecurityDAO securityDAO, AuditService auditService) {
this.keycloakService = keycloakService;
this.securityDAO = securityDAO;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/TagServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/TagServiceImpl.java
index 891b599..76e57f9 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/TagServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/TagServiceImpl.java
@@ -21,12 +21,13 @@ package com.epam.datalab.backendapi.service;
import com.epam.datalab.auth.UserInfo;
import com.google.inject.Singleton;
+import org.springframework.context.annotation.Scope;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
-@Singleton
+@Scope("singleton")
public class TagServiceImpl implements TagService {
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserRoleServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserRoleServiceImpl.java
index c182662..3994e11 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserRoleServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserRoleServiceImpl.java
@@ -23,16 +23,18 @@ import com.epam.datalab.backendapi.resources.dto.UserRoleDTO;
import com.epam.datalab.exceptions.ResourceNotFoundException;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.util.Collections;
import java.util.List;
import java.util.Set;
-@Singleton
+@Scope("singleton")
public class UserRoleServiceImpl implements UserRoleService {
private static final String ROLE_NOT_FOUND_MSG = "Any of role : %s were not found";
- @Inject
+ @Autowired
private UserRoleDAO userRoleDao;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserSettingServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserSettingServiceImpl.java
index 20be82e..039ed09 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserSettingServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/UserSettingServiceImpl.java
@@ -23,12 +23,14 @@ import com.epam.datalab.backendapi.dao.UserSettingsDAO;
import com.epam.datalab.backendapi.resources.dto.UserDTO;
import com.google.inject.Inject;
import com.google.inject.Singleton;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.util.List;
-@Singleton
+@Scope("singleton")
public class UserSettingServiceImpl implements UserSettingService {
- @Inject
+ @Autowired
private UserSettingsDAO settingsDAO;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AccessKeyServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AccessKeyServiceImpl.java
index d9c119e..55c7708 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AccessKeyServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AccessKeyServiceImpl.java
@@ -30,14 +30,16 @@ import com.jcraft.jsch.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.KeyPair;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
-@Singleton
+@Scope("singleton")
@Slf4j
public class AccessKeyServiceImpl implements AccessKeyService {
- @Inject
+ @Autowired
private SelfServiceApplicationConfiguration configuration;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AuditServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AuditServiceImpl.java
index 161bf2b..d28d1ef 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AuditServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/AuditServiceImpl.java
@@ -25,6 +25,7 @@ import com.epam.datalab.backendapi.domain.AuditDTO;
import com.epam.datalab.backendapi.domain.AuditPaginationDTO;
import com.epam.datalab.backendapi.service.AuditService;
import com.google.inject.Inject;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
@@ -33,7 +34,7 @@ import static com.epam.datalab.backendapi.domain.AuditActionEnum.FOLLOW_LINK;
public class AuditServiceImpl implements AuditService {
private final AuditDAO auditDAO;
- @Inject
+ @Autowired
public AuditServiceImpl(AuditDAO auditDAO) {
this.auditDAO = auditDAO;
}
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BackupServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BackupServiceImpl.java
index cfd42a0..4ae6cdf 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BackupServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BackupServiceImpl.java
@@ -32,17 +32,19 @@ import com.epam.datalab.rest.contracts.BackupAPI;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.inject.name.Named;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.util.List;
-@Singleton
+@Scope("singleton")
public class BackupServiceImpl implements BackupService {
- @Inject
+ @Autowired
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME)
private RESTService provisioningService;
- @Inject
+ @Autowired
private BackupDAO backupDao;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BillingServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BillingServiceImpl.java
index a0217c0..5f831f9 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BillingServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BillingServiceImpl.java
@@ -51,6 +51,7 @@ import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.http.client.utils.URIBuilder;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.core.GenericType;
import java.math.BigDecimal;
@@ -77,7 +78,7 @@ public class BillingServiceImpl implements BillingService {
private final BillingDAO billingDAO;
private final ExploratoryDAO exploratoryDAO;
- @Inject
+ @Autowired
public BillingServiceImpl(ProjectService projectService, ProjectDAO projectDAO, EndpointService endpointService,
ExploratoryService exploratoryService, SelfServiceApplicationConfiguration configuration,
@Named(ServiceConsts.BILLING_SERVICE_NAME) RESTService billingService,
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BucketServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BucketServiceImpl.java
index f52497f..a89eb68 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BucketServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/BucketServiceImpl.java
@@ -40,6 +40,7 @@ import org.apache.commons.io.IOUtils;
import org.apache.http.HttpStatus;
import org.glassfish.jersey.media.multipart.FormDataMultiPart;
import org.glassfish.jersey.media.multipart.file.StreamDataBodyPart;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
@@ -71,7 +72,7 @@ public class BucketServiceImpl implements BucketService {
private final EndpointService endpointService;
private final RESTService provisioningService;
- @Inject
+ @Autowired
public BucketServiceImpl(EndpointService endpointService, @Named(ServiceConsts.BUCKET_SERVICE_NAME) RESTService provisioningService) {
this.endpointService = endpointService;
this.provisioningService = provisioningService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java
index 2595c21..a54bf6c 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ComputationalServiceImpl.java
@@ -49,6 +49,7 @@ import com.google.inject.Singleton;
import com.google.inject.name.Named;
import com.mongodb.client.result.UpdateResult;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.*;
import java.util.stream.Collectors;
@@ -87,7 +88,7 @@ public class ComputationalServiceImpl implements ComputationalService {
private final EndpointService endpointService;
private final InfrastructureTemplateService templateService;
- @Inject
+ @Autowired
public ComputationalServiceImpl(ProjectService projectService, ExploratoryDAO exploratoryDAO, ComputationalDAO computationalDAO,
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService,
RequestBuilder requestBuilder, RequestId requestId, TagService tagService,
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EndpointServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EndpointServiceImpl.java
index 77ce551..d8c66de 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EndpointServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EndpointServiceImpl.java
@@ -43,6 +43,7 @@ import com.epam.datalab.rest.client.RESTService;
import com.google.inject.Inject;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.ws.rs.core.Response;
import java.util.Arrays;
@@ -67,7 +68,7 @@ public class EndpointServiceImpl implements EndpointService {
private final UserRoleDAO userRoleDao;
private final OdahuService odahuService;
- @Inject
+ @Autowired
public EndpointServiceImpl(EndpointDAO endpointDAO, ProjectService projectService, ExploratoryDAO exploratoryDAO,
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService,
UserRoleDAO userRoleDao, OdahuService odahuService) {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EnvironmentServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EnvironmentServiceImpl.java
index 2f23861..f8fe94a 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EnvironmentServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/EnvironmentServiceImpl.java
@@ -40,6 +40,7 @@ import com.epam.datalab.model.ResourceEnum;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.annotation.Scope;
import java.util.*;
import java.util.stream.Collectors;
@@ -50,7 +51,7 @@ import static com.epam.datalab.backendapi.resources.dto.UserDTO.Status.NOT_ACTIV
import static com.epam.datalab.dto.UserInstanceStatus.*;
import static com.epam.datalab.rest.contracts.ComputationalAPI.AUDIT_MESSAGE;
-@Singleton
+@Scope("singleton")
@Slf4j
public class EnvironmentServiceImpl implements EnvironmentService {
private static final String ERROR_MSG_FORMAT = "Can not %s environment because on of user resource is in status CREATING or STARTING";
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ExploratoryServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ExploratoryServiceImpl.java
index 60d4c84..f1585a0 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ExploratoryServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ExploratoryServiceImpl.java
@@ -47,6 +47,8 @@ import com.google.inject.Singleton;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.util.*;
import java.util.stream.Collectors;
@@ -57,7 +59,7 @@ import static com.epam.datalab.dto.UserInstanceStatus.*;
import static com.epam.datalab.rest.contracts.ExploratoryAPI.*;
@Slf4j
-@Singleton
+@Scope("singleton")
public class ExploratoryServiceImpl implements ExploratoryService {
private final ProjectService projectService;
private final ExploratoryDAO exploratoryDAO;
@@ -72,7 +74,7 @@ public class ExploratoryServiceImpl implements ExploratoryService {
private final AuditService auditService;
private final SelfServiceApplicationConfiguration configuration;
- @Inject
+ @Autowired
public ExploratoryServiceImpl(ProjectService projectService, ExploratoryDAO exploratoryDAO, ComputationalDAO computationalDAO, GitCredsDAO gitCredsDAO,
ImageExploratoryDAO imageExploratoryDao, @Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService,
RequestBuilder requestBuilder, RequestId requestId, TagService tagService, EndpointService endpointService, AuditService auditService,
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GitCredentialServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GitCredentialServiceImpl.java
index a8540ac..abc4b2a 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GitCredentialServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GitCredentialServiceImpl.java
@@ -40,6 +40,7 @@ import com.google.inject.Singleton;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.stream.Collectors;
@@ -52,18 +53,18 @@ import static com.epam.datalab.rest.contracts.ExploratoryAPI.EXPLORATORY_GIT_CRE
public class GitCredentialServiceImpl implements GitCredentialService {
private static final boolean CLEAR_USER_PASSWORD = true;
- @Inject
+ @Autowired
private GitCredsDAO gitCredsDAO;
- @Inject
+ @Autowired
private ExploratoryDAO exploratoryDAO;
- @Inject
+ @Autowired
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME)
private RESTService provisioningService;
- @Inject
+ @Autowired
private RequestBuilder requestBuilder;
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private EndpointService endpointService;
@Audit(action = UPDATE, type = GIT_ACCOUNT)
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GuacamoleServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GuacamoleServiceImpl.java
index 80534fe..fc0e14e 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GuacamoleServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/GuacamoleServiceImpl.java
@@ -35,13 +35,15 @@ import org.apache.guacamole.net.InetGuacamoleSocket;
import org.apache.guacamole.net.SimpleGuacamoleTunnel;
import org.apache.guacamole.protocol.ConfiguredGuacamoleSocket;
import org.apache.guacamole.protocol.GuacamoleConfiguration;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import javax.inject.Named;
import java.net.URI;
import java.util.Map;
@Slf4j
-@Singleton
+@Scope("singleton")
public class GuacamoleServiceImpl implements GuacamoleService {
private static final String PRIVATE_KEY_PARAM_NAME = "private-key";
@@ -52,7 +54,7 @@ public class GuacamoleServiceImpl implements GuacamoleService {
private final RESTService provisioningService;
private final EndpointService endpointService;
- @Inject
+ @Autowired
public GuacamoleServiceImpl(SelfServiceApplicationConfiguration conf,
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService,
EndpointService endpointService) {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
index 8c68021..7a343a5 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
@@ -52,6 +52,8 @@ import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.util.List;
import java.util.Map;
@@ -61,26 +63,26 @@ import java.util.stream.Collectors;
import static com.epam.datalab.backendapi.domain.AuditActionEnum.CREATE;
import static com.epam.datalab.backendapi.domain.AuditResourceTypeEnum.IMAGE;
-@Singleton
+@Scope("singleton")
@Slf4j
public class ImageExploratoryServiceImpl implements ImageExploratoryService {
private static final String IMAGE_EXISTS_MSG = "Image with name %s is already exist in project %s";
private static final String IMAGE_NOT_FOUND_MSG = "Image with name %s was not found for user %s";
- @Inject
+ @Autowired
private ExploratoryDAO exploratoryDAO;
- @Inject
+ @Autowired
private ImageExploratoryDAO imageExploratoryDao;
- @Inject
+ @Autowired
private ExploratoryLibDAO libDAO;
- @Inject
+ @Autowired
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME)
private RESTService provisioningService;
- @Inject
+ @Autowired
private RequestBuilder requestBuilder;
- @Inject
+ @Autowired
private EndpointService endpointService;
- @Inject
+ @Autowired
private ProjectService projectService;
@Audit(action = CREATE, type = IMAGE)
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InactivityServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InactivityServiceImpl.java
index 96fb050..911460c 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InactivityServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InactivityServiceImpl.java
@@ -39,27 +39,28 @@ import com.epam.datalab.rest.contracts.InfrasctructureAPI;
import com.google.inject.Inject;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.time.LocalDateTime;
@Slf4j
public class InactivityServiceImpl implements InactivityService {
- @Inject
+ @Autowired
private ExploratoryDAO exploratoryDAO;
- @Inject
+ @Autowired
private ComputationalDAO computationalDAO;
- @Inject
+ @Autowired
private EnvDAO envDAO;
- @Inject
+ @Autowired
private RequestBuilder requestBuilder;
- @Inject
+ @Autowired
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME)
private RESTService provisioningService;
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private SecurityService securityService;
- @Inject
+ @Autowired
private EndpointService endpointService;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureInfoServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureInfoServiceImpl.java
index 2aca621..1227a35 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureInfoServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureInfoServiceImpl.java
@@ -48,6 +48,7 @@ import com.google.inject.Inject;
import com.google.inject.name.Named;
import com.jcabi.manifests.Manifests;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.*;
import java.util.stream.Collectors;
@@ -72,7 +73,7 @@ public class InfrastructureInfoServiceImpl implements InfrastructureInfoService
private final RequestId requestId;
- @Inject
+ @Autowired
public InfrastructureInfoServiceImpl(ExploratoryDAO expDAO, SelfServiceApplicationConfiguration configuration, ProjectService projectService,
EndpointService endpointService, BillingService billingService, RequestBuilder requestBuilder,
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService, RequestId requestId) {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureTemplateServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureTemplateServiceImpl.java
index da13cf1..f4f13d6 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureTemplateServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/InfrastructureTemplateServiceImpl.java
@@ -47,6 +47,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.inject.Inject;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.Arrays;
import java.util.List;
@@ -68,7 +69,7 @@ public class InfrastructureTemplateServiceImpl implements InfrastructureTemplate
private final EndpointService endpointService;
private final RESTService provisioningService;
- @Inject
+ @Autowired
public InfrastructureTemplateServiceImpl(SelfServiceApplicationConfiguration configuration, SettingsDAO settingsDAO,
ProjectDAO projectDAO, EndpointService endpointService,
UserGroupDAO userGroupDao, GpuDAO gpuDAO,
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/LibraryServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/LibraryServiceImpl.java
index cfc5e6c..91d06b9 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/LibraryServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/LibraryServiceImpl.java
@@ -53,6 +53,7 @@ import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.bson.Document;
+import org.springframework.context.annotation.Scope;
import java.util.*;
import java.util.stream.Collectors;
@@ -66,7 +67,7 @@ import static com.epam.datalab.dto.LibraryGroups.*;
@Slf4j
-@Singleton
+@Scope("singleton")
public class LibraryServiceImpl implements LibraryService {
private static final String COMPUTATIONAL_NOT_FOUND_MSG = "Computational with name %s was not found";
private static final String LIB_ALREADY_INSTALLED = "Library %s is already installing";
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/MavenCentralLibraryService.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/MavenCentralLibraryService.java
index 26569cc..f390d3f 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/MavenCentralLibraryService.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/MavenCentralLibraryService.java
@@ -28,13 +28,14 @@ import com.epam.datalab.rest.client.RESTService;
import com.google.inject.Singleton;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.annotation.Scope;
import javax.inject.Inject;
import java.net.URI;
import static java.lang.String.join;
-@Singleton
+@Scope("singleton")
@Slf4j
public class MavenCentralLibraryService implements ExternalLibraryService {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/OdahuServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/OdahuServiceImpl.java
index a581811..49ace95 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/OdahuServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/OdahuServiceImpl.java
@@ -42,6 +42,7 @@ import com.epam.datalab.rest.client.RESTService;
import com.google.inject.Inject;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.Arrays;
import java.util.HashMap;
@@ -74,7 +75,7 @@ public class OdahuServiceImpl implements OdahuService {
private final RequestBuilder requestBuilder;
private final RequestId requestId;
- @Inject
+ @Autowired
public OdahuServiceImpl(ProjectService projectService, EndpointService endpointService, OdahuDAO odahuDAO,
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService,
RequestBuilder requestBuilder, RequestId requestId) {
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java
index c910ed9..89db72c 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ProjectServiceImpl.java
@@ -40,6 +40,7 @@ import com.epam.datalab.rest.client.RESTService;
import com.google.inject.Inject;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.*;
import java.util.function.Supplier;
@@ -83,7 +84,7 @@ public class ProjectServiceImpl implements ProjectService {
private final OdahuService odahuService;
- @Inject
+ @Autowired
public ProjectServiceImpl(ProjectDAO projectDAO, ExploratoryService exploratoryService,
UserGroupDAO userGroupDAO,
@Named(ServiceConsts.PROVISIONING_SERVICE_NAME) RESTService provisioningService,
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ReuploadKeyServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ReuploadKeyServiceImpl.java
index 093ac7f..10c46e2 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ReuploadKeyServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ReuploadKeyServiceImpl.java
@@ -35,6 +35,7 @@ import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import static com.epam.datalab.constants.ServiceConsts.PROVISIONING_SERVICE_NAME;
import static com.epam.datalab.dto.UserInstanceStatus.RUNNING;
@@ -43,18 +44,18 @@ import static com.epam.datalab.dto.UserInstanceStatus.RUNNING;
@Slf4j
public class ReuploadKeyServiceImpl implements ReuploadKeyService {
- @Inject
+ @Autowired
@Named(PROVISIONING_SERVICE_NAME)
private RESTService provisioningService;
- @Inject
+ @Autowired
private RequestBuilder requestBuilder;
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
private ExploratoryService exploratoryService;
- @Inject
+ @Autowired
private ComputationalDAO computationalDAO;
- @Inject
+ @Autowired
private ExploratoryDAO exploratoryDAO;
private static final String REUPLOAD_KEY_UPDATE_MSG = "Reuploading key process is successfully finished. " +
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SchedulerJobServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SchedulerJobServiceImpl.java
index 546a044..56a452a 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SchedulerJobServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SchedulerJobServiceImpl.java
@@ -47,6 +47,8 @@ import com.google.inject.Singleton;
import com.google.inject.name.Named;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.time.DayOfWeek;
import java.time.LocalDate;
@@ -80,37 +82,37 @@ import static java.util.Collections.singletonList;
import static java.util.Date.from;
@Slf4j
-@Singleton
+@Scope("singleton")
public class SchedulerJobServiceImpl implements SchedulerJobService {
private static final String SCHEDULER_NOT_FOUND_MSG = "Scheduler job data not found for user %s with exploratory %s";
private static final String AUDIT_MESSAGE = "Scheduled action, requested for notebook %s";
private static final long ALLOWED_INACTIVITY_MINUTES = 1L;
- @Inject
+ @Autowired
private SchedulerJobDAO schedulerJobDAO;
- @Inject
+ @Autowired
private ExploratoryDAO exploratoryDAO;
- @Inject
+ @Autowired
private ComputationalDAO computationalDAO;
- @Inject
+ @Autowired
private ExploratoryService exploratoryService;
- @Inject
+ @Autowired
private ComputationalService computationalService;
- @Inject
+ @Autowired
private SecurityService securityService;
- @Inject
+ @Autowired
private EnvDAO envDAO;
- @Inject
+ @Autowired
private RequestId requestId;
- @Inject
+ @Autowired
@Named(PROVISIONING_SERVICE_NAME)
private RESTService provisioningService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SystemInfoServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SystemInfoServiceImpl.java
index 9a8e064..7b7fd7f 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SystemInfoServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/SystemInfoServiceImpl.java
@@ -25,6 +25,7 @@ import com.epam.datalab.model.systeminfo.MemoryInfo;
import com.epam.datalab.model.systeminfo.OsInfo;
import com.epam.datalab.model.systeminfo.ProcessorInfo;
import com.google.inject.Inject;
+import org.springframework.beans.factory.annotation.Autowired;
import oshi.SystemInfo;
import oshi.hardware.CentralProcessor;
import oshi.hardware.GlobalMemory;
@@ -38,7 +39,7 @@ import java.util.stream.Collectors;
public class SystemInfoServiceImpl implements SystemInfoService {
- @Inject
+ @Autowired
private SystemInfo si;
@Override
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/UserGroupServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/UserGroupServiceImpl.java
index 528a958..952fb5e 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/UserGroupServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/UserGroupServiceImpl.java
@@ -41,6 +41,7 @@ import com.epam.datalab.exceptions.ResourceNotFoundException;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.annotation.Scope;
import java.util.Collection;
import java.util.Collections;
@@ -55,7 +56,7 @@ import static com.epam.datalab.backendapi.domain.AuditActionEnum.DELETE;
import static com.epam.datalab.backendapi.domain.AuditActionEnum.UPDATE;
import static com.epam.datalab.backendapi.domain.AuditResourceTypeEnum.GROUP;
-@Singleton
+@Scope("singleton")
@Slf4j
public class UserGroupServiceImpl implements UserGroupService {
private static final String AUDIT_ADD_ROLE_MESSAGE = "Add role(s): %s\n";
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/servlet/guacamole/GuacamoleServlet.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/servlet/guacamole/GuacamoleServlet.java
index 5cce713..6fbcf4c 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/servlet/guacamole/GuacamoleServlet.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/servlet/guacamole/GuacamoleServlet.java
@@ -32,6 +32,7 @@ import org.apache.commons.lang3.StringUtils;
import org.apache.guacamole.net.GuacamoleTunnel;
import org.apache.guacamole.servlet.GuacamoleHTTPTunnelServlet;
import org.apache.http.HttpStatus;
+import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@@ -48,7 +49,7 @@ public class GuacamoleServlet extends GuacamoleHTTPTunnelServlet {
private final SecurityDAO securityDAO;
private static final String AUTH_HEADER_PREFIX = "Bearer ";
- @Inject
+ @Autowired
public GuacamoleServlet(GuacamoleService guacamoleService, ObjectMapper mapper, SecurityDAO securityDAO) {
this.mapper = mapper;
this.guacamoleService = guacamoleService;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/util/BillingUtils.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/util/BillingUtils.java
index fe9575f..0b03d46 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/util/BillingUtils.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/util/BillingUtils.java
@@ -25,7 +25,7 @@ import com.epam.datalab.dto.UserInstanceDTO;
import com.epam.datalab.dto.UserInstanceStatus;
import com.epam.datalab.dto.base.DataEngineType;
import com.epam.datalab.dto.computational.UserComputationalResource;
-import jersey.repackaged.com.google.common.collect.Lists;
+import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/util/RequestBuilder.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/util/RequestBuilder.java
index 7b1ea0a..110e535 100644
--- a/services/self-service/src/main/java/com/epam/datalab/backendapi/util/RequestBuilder.java
+++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/util/RequestBuilder.java
@@ -66,6 +66,8 @@ import com.epam.datalab.util.UsernameUtils;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
import java.util.List;
import java.util.Map;
@@ -73,15 +75,15 @@ import java.util.UUID;
import static com.epam.datalab.cloud.CloudProvider.*;
-@Singleton
+@Scope("singleton")
@Slf4j
public class RequestBuilder {
private static final String UNSUPPORTED_CLOUD_PROVIDER_MESSAGE = "Unsupported cloud provider ";
private static final String AZURE_REFRESH_TOKEN_KEY = "refresh_token";
- @Inject
+ @Autowired
private SelfServiceApplicationConfiguration configuration;
- @Inject
+ @Autowired
private SettingsDAO settingsDAO;
private CloudSettings cloudSettings(String user, CloudProvider cloudProvider) {
diff --git a/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/TestBase.java b/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/TestBase.java
index 43169b1..915faea 100644
--- a/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/TestBase.java
+++ b/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/TestBase.java
@@ -66,7 +66,7 @@ public class TestBase {
.buildAuthFilter()))
.addProvider(RolesAllowedDynamicFeature.class)
.addProvider(new ResourceNotFoundExceptionMapper())
- .addProvider(new AuthValueFactoryProvider.Binder<>(UserInfo.class))
+ //.addProvider(new AuthValueFactoryProvider.Binder<>(UserInfo.class))
.addProvider(MultiPartFeature.class)
.addResource(resourceInstance)
.build();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org