Skip to content
Snippets Groups Projects
Unverified Commit e8951ca2 authored by Łukasz Łopatowski's avatar Łukasz Łopatowski Committed by GitHub
Browse files

Merge pull request #204 from...

Merge pull request #204 from nmaas-platform/149-handle-namespace-creation-during-domain-provisioning

149 handle namespace creation during domain provisioning
parents 46650b0f 1cf97527
No related branches found
No related tags found
No related merge requests found
package net.geant.nmaas.portal.api.domain;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
public class DomainAnnotationView {
private Long id;
private String key;
private String value;
}
\ No newline at end of file
...@@ -8,6 +8,7 @@ import net.geant.nmaas.dcn.deployment.entities.DcnDeploymentState; ...@@ -8,6 +8,7 @@ import net.geant.nmaas.dcn.deployment.entities.DcnDeploymentState;
import net.geant.nmaas.orchestration.events.dcn.DcnDeployedEvent; import net.geant.nmaas.orchestration.events.dcn.DcnDeployedEvent;
import net.geant.nmaas.orchestration.events.dcn.DcnRemoveActionEvent; import net.geant.nmaas.orchestration.events.dcn.DcnRemoveActionEvent;
import net.geant.nmaas.orchestration.exceptions.InvalidDomainException; import net.geant.nmaas.orchestration.exceptions.InvalidDomainException;
import net.geant.nmaas.portal.api.domain.DomainAnnotationView;
import net.geant.nmaas.portal.api.domain.DomainBase; import net.geant.nmaas.portal.api.domain.DomainBase;
import net.geant.nmaas.portal.api.domain.DomainBaseWithState; import net.geant.nmaas.portal.api.domain.DomainBaseWithState;
import net.geant.nmaas.portal.api.domain.DomainGroupView; import net.geant.nmaas.portal.api.domain.DomainGroupView;
...@@ -245,7 +246,7 @@ public class DomainController extends AppBaseController { ...@@ -245,7 +246,7 @@ public class DomainController extends AppBaseController {
@DeleteMapping("/group/{domainGroupId}") @DeleteMapping("/group/{domainGroupId}")
@Transactional @Transactional
@PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN')") @PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN') || hasRole('ROLE_VL_MANAGER')")
public void deleteDomainGroup(@PathVariable Long domainGroupId) { public void deleteDomainGroup(@PathVariable Long domainGroupId) {
this.domainGroupService.deleteDomainGroup(domainGroupId); this.domainGroupService.deleteDomainGroup(domainGroupId);
} }
...@@ -287,7 +288,7 @@ public class DomainController extends AppBaseController { ...@@ -287,7 +288,7 @@ public class DomainController extends AppBaseController {
@PatchMapping("/group/{domainGroupId}") @PatchMapping("/group/{domainGroupId}")
@Transactional @Transactional
@PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN')") @PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN') || hasRole('ROLE_VL_MANAGER')")
public DomainGroupView deleteDomainFromGroup(@PathVariable Long domainGroupId, @RequestBody Long domainId) { public DomainGroupView deleteDomainFromGroup(@PathVariable Long domainGroupId, @RequestBody Long domainId) {
return domainGroupService.deleteDomainFromGroup( return domainGroupService.deleteDomainFromGroup(
domainService.findDomain(domainId).orElseThrow(() -> new IllegalArgumentException(String.format("Domain with id %s doesn't exist", domainId))), domainService.findDomain(domainId).orElseThrow(() -> new IllegalArgumentException(String.format("Domain with id %s doesn't exist", domainId))),
...@@ -333,7 +334,7 @@ public class DomainController extends AppBaseController { ...@@ -333,7 +334,7 @@ public class DomainController extends AppBaseController {
@PutMapping("/annotations/{id}") @PutMapping("/annotations/{id}")
@Transactional @Transactional
@PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN')") @PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN')")
public void updateAnnotation(@PathVariable Long id, @RequestBody DomainAnnotation annotation) { public void updateAnnotation(@PathVariable Long id, @RequestBody DomainAnnotationView annotation) {
this.domainService.updateAnnotation(id, annotation); this.domainService.updateAnnotation(id, annotation);
} }
......
...@@ -2,6 +2,7 @@ package net.geant.nmaas.portal.service; ...@@ -2,6 +2,7 @@ package net.geant.nmaas.portal.service;
import net.geant.nmaas.dcn.deployment.DcnDeploymentType; import net.geant.nmaas.dcn.deployment.DcnDeploymentType;
import net.geant.nmaas.dcn.deployment.entities.DcnInfo; import net.geant.nmaas.dcn.deployment.entities.DcnInfo;
import net.geant.nmaas.portal.api.domain.DomainAnnotationView;
import net.geant.nmaas.portal.api.domain.DomainGroupView; import net.geant.nmaas.portal.api.domain.DomainGroupView;
import net.geant.nmaas.portal.api.domain.DomainRequest; import net.geant.nmaas.portal.api.domain.DomainRequest;
import net.geant.nmaas.portal.api.domain.KeyValueView; import net.geant.nmaas.portal.api.domain.KeyValueView;
...@@ -72,5 +73,5 @@ public interface DomainService { ...@@ -72,5 +73,5 @@ public interface DomainService {
boolean checkIfAnnotationExist(String key); boolean checkIfAnnotationExist(String key);
void deleteAnnotation(Long id); void deleteAnnotation(Long id);
List<DomainAnnotation> getAnnotations(); List<DomainAnnotation> getAnnotations();
void updateAnnotation(Long id,DomainAnnotation domainAnnotation); void updateAnnotation(Long id,DomainAnnotationView domainAnnotation);
} }
\ No newline at end of file
...@@ -7,6 +7,7 @@ import net.geant.nmaas.dcn.deployment.entities.DcnInfo; ...@@ -7,6 +7,7 @@ import net.geant.nmaas.dcn.deployment.entities.DcnInfo;
import net.geant.nmaas.dcn.deployment.entities.DcnSpec; import net.geant.nmaas.dcn.deployment.entities.DcnSpec;
import net.geant.nmaas.dcn.deployment.repositories.DomainDcnDetailsRepository; import net.geant.nmaas.dcn.deployment.repositories.DomainDcnDetailsRepository;
import net.geant.nmaas.orchestration.repositories.DomainTechDetailsRepository; import net.geant.nmaas.orchestration.repositories.DomainTechDetailsRepository;
import net.geant.nmaas.portal.api.domain.DomainAnnotationView;
import net.geant.nmaas.portal.api.domain.DomainGroupView; import net.geant.nmaas.portal.api.domain.DomainGroupView;
import net.geant.nmaas.portal.api.domain.DomainRequest; import net.geant.nmaas.portal.api.domain.DomainRequest;
import net.geant.nmaas.portal.api.domain.KeyValueView; import net.geant.nmaas.portal.api.domain.KeyValueView;
...@@ -520,13 +521,13 @@ public class DomainServiceImpl implements DomainService { ...@@ -520,13 +521,13 @@ public class DomainServiceImpl implements DomainService {
} }
@Override @Override
public void updateAnnotation(Long id, DomainAnnotation annotation) { public void updateAnnotation(Long id, DomainAnnotationView annotation) {
Optional<DomainAnnotation> domainFromDb = this.domainAnnotationsRepository.findById(id); Optional<DomainAnnotation> domainFromDb = this.domainAnnotationsRepository.findById(id);
if (domainFromDb.isPresent() && id.equals(annotation.getId())) { if (domainFromDb.isPresent() && id.equals(annotation.getId())) {
DomainAnnotation domainAnnotation = domainFromDb.get(); DomainAnnotation domainAnnotation = domainFromDb.get();
domainAnnotation.setKey(annotation.getKey()); domainAnnotation.setKey(annotation.getKey());
domainAnnotation.setValue(annotation.getValue()); domainAnnotation.setValue(annotation.getValue());
this.domainAnnotationsRepository.save(annotation); this.domainAnnotationsRepository.save(domainAnnotation);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment