Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Open Subsurface Data Universe Software
Platform
Deployment and Operations
Backup Service
Commits
022bd031
Commit
022bd031
authored
Oct 06, 2020
by
Rustam Lotsmanenko (EPAM)
Browse files
GONRG-863
Changes: Added exception handling Refactoring Move BackupServiceImpl.java to core
parent
6873e116
Changes
22
Hide whitespace changes
Inline
Side-by-side
backup-core/pom.xml
View file @
022bd031
...
...
@@ -7,14 +7,14 @@
<parent>
<artifactId>
backup-service
</artifactId>
<groupId>
org.opengroup.osdu
</groupId>
<version>
1
.0.
0
</version>
<version>
0
.0.
1
</version>
<relativePath>
../pom.xml
</relativePath>
</parent>
<artifactId>
backup-core
</artifactId>
<description>
Backup service Core on GCP
</description>
<version>
1
.0.
0
</version>
<version>
0
.0.
1
</version>
<dependencies>
<dependency>
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/api/BackupApi.java
View file @
022bd031
...
...
@@ -9,7 +9,7 @@ import org.opengroup.osdu.backup.model.BackupImportRequest;
import
org.opengroup.osdu.backup.model.BackupRole
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.model.BackupStamp
;
import
org.opengroup.osdu.backup.
provider.interfa
ce
s
.BackupService
;
import
org.opengroup.osdu.backup.
servi
ce.BackupService
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.security.access.prepost.PreAuthorize
;
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/config/AssetConfig.java
→
backup-core/src/main/java/org/opengroup/osdu/backup/config/Asset
Locator
Config.java
View file @
022bd031
package
org.opengroup.osdu.backup.config
;
import
org.opengroup.osdu.backup.locator.AssetManagerFactory
;
import
org.springframework.beans.factory.FactoryBean
;
import
org.springframework.beans.factory.config.ServiceLocatorFactoryBean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
@Configuration
public
class
AssetConfig
{
public
class
Asset
Locator
Config
{
@Bean
public
FactoryBean
serviceLocatorFactoryBean
()
{
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/exception/AppExceptionHandler.java
0 → 100644
View file @
022bd031
/*
* Copyright 2020 Google LLC
* Copyright 2020 EPAM Systems, Inc
*
* Licensed 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
*
* https://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
org.opengroup.osdu.backup.exception
;
import
java.util.logging.Level
;
import
lombok.extern.java.Log
;
import
org.opengroup.osdu.core.common.model.http.AppException
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.ControllerAdvice
;
import
org.springframework.web.bind.annotation.ExceptionHandler
;
@ControllerAdvice
@Log
public
class
AppExceptionHandler
{
@ExceptionHandler
(
AppException
.
class
)
public
ResponseEntity
<
Object
>
handleAppExceptions
(
AppException
e
)
{
return
this
.
getErrorResponse
(
e
);
}
private
ResponseEntity
<
Object
>
getErrorResponse
(
AppException
e
)
{
String
exceptionMsg
=
e
.
getOriginalException
()
!=
null
?
e
.
getOriginalException
().
getMessage
()
:
e
.
getError
().
getMessage
();
if
(
e
.
getError
().
getCode
()
>
499
)
{
log
.
log
(
Level
.
SEVERE
,
exceptionMsg
,
e
.
getOriginalException
());
}
else
{
log
.
log
(
Level
.
WARNING
,
exceptionMsg
,
e
.
getOriginalException
());
}
return
new
ResponseEntity
<
Object
>(
e
.
getError
(),
HttpStatus
.
resolve
(
e
.
getError
().
getCode
()));
}
}
backup-core/src/main/java/org/opengroup/osdu/backup/
config
/AssetManagerFactory.java
→
backup-core/src/main/java/org/opengroup/osdu/backup/
locator
/AssetManagerFactory.java
View file @
022bd031
package
org.opengroup.osdu.backup.
config
;
package
org.opengroup.osdu.backup.
locator
;
import
org.opengroup.osdu.backup.locator.Asset
;
import
org.opengroup.osdu.backup.provider.interfaces.AssetBackupManager
;
import
org.opengroup.osdu.backup.manager.AssetBackupManager
;
public
interface
AssetManagerFactory
{
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/
provider/interfaces
/AssetBackupManager.java
→
backup-core/src/main/java/org/opengroup/osdu/backup/
manager
/AssetBackupManager.java
View file @
022bd031
package
org.opengroup.osdu.backup.
provider.interfaces
;
package
org.opengroup.osdu.backup.
manager
;
import
java.util.List
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/model/BackupImportRequest.java
View file @
022bd031
...
...
@@ -4,6 +4,7 @@ import lombok.AllArgsConstructor;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.opengroup.osdu.backup.locator.Asset
;
@Data
@NoArgsConstructor
...
...
@@ -13,4 +14,6 @@ public class BackupImportRequest {
private
String
backupStampId
;
private
Asset
asset
;
}
backup-core/src/main/java/org/opengroup/osdu/backup/
provider/interfaces
/BackupStampRepository.java
→
backup-core/src/main/java/org/opengroup/osdu/backup/
repository
/BackupStampRepository.java
View file @
022bd031
package
org.opengroup.osdu.backup.
provider.interfaces
;
package
org.opengroup.osdu.backup.
repository
;
import
java.time.LocalDateTime
;
import
java.util.EnumMap
;
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/
provider/interfaces
/ScheduleRepository.java
→
backup-core/src/main/java/org/opengroup/osdu/backup/
repository
/ScheduleRepository.java
View file @
022bd031
package
org.opengroup.osdu.backup.
provider.interfaces
;
package
org.opengroup.osdu.backup.
repository
;
import
java.util.List
;
import
java.util.Map
;
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/
provider/interfa
ce
s
/BackupService.java
→
backup-core/src/main/java/org/opengroup/osdu/backup/
servi
ce/BackupService.java
View file @
022bd031
package
org.opengroup.osdu.backup.
provider.interfa
ce
s
;
package
org.opengroup.osdu.backup.
servi
ce
;
import
java.util.EnumMap
;
import
java.util.List
;
...
...
provider/
backup-
gcp
/src/main/java/org/opengroup/osdu/backup/
provider/gcp/
service/BackupServiceImpl.java
→
backup-
core
/src/main/java/org/opengroup/osdu/backup/service/
impl/
BackupServiceImpl.java
View file @
022bd031
package
org.opengroup.osdu.backup.
provider.gcp.
service
;
package
org.opengroup.osdu.backup.service
.impl
;
import
java.util.EnumMap
;
...
...
@@ -7,14 +7,14 @@ import java.util.Map;
import
java.util.Objects
;
import
javax.annotation.PostConstruct
;
import
lombok.RequiredArgsConstructor
;
import
org.opengroup.osdu.backup.config.AssetManagerFactory
;
import
org.opengroup.osdu.backup.locator.Asset
;
import
org.opengroup.osdu.backup.locator.AssetManagerFactory
;
import
org.opengroup.osdu.backup.model.BackupImportRequest
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.model.BackupStamp
;
import
org.opengroup.osdu.backup.
provider.interfaces.BackupService
;
import
org.opengroup.osdu.backup.
provider.interfaces.BackupStamp
Repository
;
import
org.opengroup.osdu.backup.
provider.interfaces.ScheduleRepository
;
import
org.opengroup.osdu.backup.
repository.BackupStampRepository
;
import
org.opengroup.osdu.backup.
repository.Schedule
Repository
;
import
org.opengroup.osdu.backup.
service.BackupService
;
import
org.opengroup.osdu.backup.shedulers.SchedulerService
;
import
org.opengroup.osdu.core.common.model.http.AppException
;
import
org.springframework.http.HttpStatus
;
...
...
@@ -71,8 +71,7 @@ public class BackupServiceImpl implements BackupService {
@Override
public
BackupStamp
submitBackupImportRequest
(
BackupImportRequest
importRequest
)
{
return
factory
.
getAssetManager
(
Asset
.
DATASTORE
)
.
importBackup
(
importRequest
.
getBackupStampId
());
return
factory
.
getAssetManager
(
importRequest
.
getAsset
()).
importBackup
(
importRequest
.
getBackupStampId
());
}
@Override
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/shedulers/BackupScheduledTask.java
View file @
022bd031
package
org.opengroup.osdu.backup.shedulers
;
import
lombok.RequiredArgsConstructor
;
import
org.opengroup.osdu.backup.manager.AssetBackupManager
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.provider.interfaces.AssetBackupManager
;
@RequiredArgsConstructor
public
class
BackupScheduledTask
implements
Runnable
{
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/shedulers/TearDownBackupScheduledTask.java
View file @
022bd031
...
...
@@ -4,10 +4,10 @@ import java.time.LocalDateTime;
import
java.util.EnumMap
;
import
java.util.List
;
import
lombok.RequiredArgsConstructor
;
import
org.opengroup.osdu.backup.config.AssetManagerFactory
;
import
org.opengroup.osdu.backup.locator.Asset
;
import
org.opengroup.osdu.backup.locator.AssetManagerFactory
;
import
org.opengroup.osdu.backup.model.BackupStamp
;
import
org.opengroup.osdu.backup.
provider.interfaces
.BackupStampRepository
;
import
org.opengroup.osdu.backup.
repository
.BackupStampRepository
;
@RequiredArgsConstructor
public
class
TearDownBackupScheduledTask
implements
Runnable
{
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/shedulers/impl/SchedulerServiceImpl.java
View file @
022bd031
...
...
@@ -8,8 +8,8 @@ import java.util.logging.Level;
import
javax.annotation.PostConstruct
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.java.Log
;
import
org.opengroup.osdu.backup.config.AssetManagerFactory
;
import
org.opengroup.osdu.backup.config.property.SchedulersProperties
;
import
org.opengroup.osdu.backup.locator.AssetManagerFactory
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.shedulers.BackupScheduledTask
;
import
org.opengroup.osdu.backup.shedulers.SchedulerService
;
...
...
backup-core/src/main/java/org/opengroup/osdu/backup/shedulers/impl/TearDownScheduler.java
View file @
022bd031
...
...
@@ -2,9 +2,9 @@ package org.opengroup.osdu.backup.shedulers.impl;
import
javax.annotation.PostConstruct
;
import
lombok.RequiredArgsConstructor
;
import
org.opengroup.osdu.backup.config.AssetManagerFactory
;
import
org.opengroup.osdu.backup.config.property.SchedulersProperties
;
import
org.opengroup.osdu.backup.provider.interfaces.BackupStampRepository
;
import
org.opengroup.osdu.backup.locator.AssetManagerFactory
;
import
org.opengroup.osdu.backup.repository.BackupStampRepository
;
import
org.opengroup.osdu.backup.shedulers.TearDownBackupScheduledTask
;
import
org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler
;
import
org.springframework.scheduling.support.PeriodicTrigger
;
...
...
backup-core/src/test/java/org/opengroup/osdu/backup/shedulers/impl/SchedulerServiceImplTest.java
View file @
022bd031
...
...
@@ -2,7 +2,6 @@ package org.opengroup.osdu.backup.shedulers.impl;
import
static
java
.
lang
.
Thread
.
sleep
;
import
static
org
.
mockito
.
Matchers
.
any
;
import
static
org
.
mockito
.
Mockito
.
doNothing
;
import
static
org
.
mockito
.
Mockito
.
times
;
import
static
org
.
mockito
.
Mockito
.
verify
;
import
static
org
.
mockito
.
Mockito
.
verifyNoMoreInteractions
;
...
...
@@ -16,12 +15,11 @@ import org.junit.runner.RunWith;
import
org.mockito.InjectMocks
;
import
org.mockito.Mock
;
import
org.mockito.runners.MockitoJUnitRunner
;
import
org.opengroup.osdu.backup.config.AssetManagerFactory
;
import
org.opengroup.osdu.backup.config.property.SchedulersProperties
;
import
org.opengroup.osdu.backup.locator.Asset
;
import
org.opengroup.osdu.backup.locator.AssetManagerFactory
;
import
org.opengroup.osdu.backup.manager.AssetBackupManager
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.provider.interfaces.AssetBackupManager
;
import
org.springframework.test.util.ReflectionTestUtils
;
@RunWith
(
MockitoJUnitRunner
.
class
)
public
class
SchedulerServiceImplTest
{
...
...
@@ -32,7 +30,7 @@ public class SchedulerServiceImplTest {
@Mock
private
AssetBackupManager
assetBackupManager
;
@Mock
@Mock
private
SchedulersProperties
schedulersProperties
;
@InjectMocks
...
...
provider/backup-gcp/pom.xml
View file @
022bd031
...
...
@@ -24,20 +24,20 @@
<parent>
<artifactId>
backup-service
</artifactId>
<groupId>
org.opengroup.osdu
</groupId>
<version>
1
.0.
0
</version>
<version>
0
.0.
1
</version>
<relativePath>
../..
</relativePath>
</parent>
<artifactId>
backup-gcp
</artifactId>
<description>
Backup service on GCP
</description>
<version>
1
.0.
0
</version>
<version>
0
.0.
1
</version>
<dependencies>
<dependency>
<groupId>
org.opengroup.osdu
</groupId>
<artifactId>
backup-core
</artifactId>
<version>
1
.0.
0
</version>
<version>
0
.0.
1
</version>
</dependency>
<dependency>
...
...
provider/backup-gcp/src/main/java/org/opengroup/osdu/backup/provider/gcp/manager/DatastoreBackupManager.java
View file @
022bd031
...
...
@@ -32,13 +32,13 @@ import java.util.stream.Collectors;
import
java.util.stream.StreamSupport
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.java.Log
;
import
org.opengroup.osdu.backup.manager.AssetBackupManager
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.model.BackupStamp
;
import
org.opengroup.osdu.backup.provider.gcp.config.property.PropertiesConfiguration
;
import
org.opengroup.osdu.backup.provider.gcp.model.constant.Constants
;
import
org.opengroup.osdu.backup.provider.gcp.model.entity.BackupStampEntity
;
import
org.opengroup.osdu.backup.provider.interfaces.AssetBackupManager
;
import
org.opengroup.osdu.backup.provider.interfaces.BackupStampRepository
;
import
org.opengroup.osdu.backup.repository.BackupStampRepository
;
import
org.opengroup.osdu.core.common.model.http.AppException
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Component
;
...
...
provider/backup-gcp/src/main/java/org/opengroup/osdu/backup/provider/gcp/manager/ElasticBackupManager.java
View file @
022bd031
...
...
@@ -3,9 +3,9 @@ package org.opengroup.osdu.backup.provider.gcp.manager;
import
java.util.List
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.java.Log
;
import
org.opengroup.osdu.backup.manager.AssetBackupManager
;
import
org.opengroup.osdu.backup.model.BackupSchedule
;
import
org.opengroup.osdu.backup.model.BackupStamp
;
import
org.opengroup.osdu.backup.provider.interfaces.AssetBackupManager
;
import
org.springframework.stereotype.Component
;
@Log
...
...
provider/backup-gcp/src/main/java/org/opengroup/osdu/backup/provider/gcp/repository/DatastoreBackupStampRepository.java
View file @
022bd031
...
...
@@ -10,7 +10,7 @@ import lombok.RequiredArgsConstructor;
import
org.opengroup.osdu.backup.locator.Asset
;
import
org.opengroup.osdu.backup.model.BackupStamp
;
import
org.opengroup.osdu.backup.provider.gcp.model.entity.BackupStampEntity
;
import
org.opengroup.osdu.backup.
provider.interfaces
.BackupStampRepository
;
import
org.opengroup.osdu.backup.
repository
.BackupStampRepository
;
import
org.opengroup.osdu.core.common.model.http.AppException
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Service
;
...
...
Prev
1
2
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment