diff --git a/commons/src/main/java/org/eclipse/kapua/commons/configuration/KapuaConfigurableServiceBase.java b/commons/src/main/java/org/eclipse/kapua/commons/configuration/KapuaConfigurableServiceBase.java index 7bde1b1f5e4..53b5d0248d0 100644 --- a/commons/src/main/java/org/eclipse/kapua/commons/configuration/KapuaConfigurableServiceBase.java +++ b/commons/src/main/java/org/eclipse/kapua/commons/configuration/KapuaConfigurableServiceBase.java @@ -12,7 +12,11 @@ *******************************************************************************/ package org.eclipse.kapua.commons.configuration; +import java.util.Map; +import java.util.Optional; + import org.eclipse.kapua.KapuaException; +import org.eclipse.kapua.commons.util.ArgumentValidator; import org.eclipse.kapua.model.config.metatype.KapuaTocd; import org.eclipse.kapua.model.domain.Actions; import org.eclipse.kapua.model.id.KapuaId; @@ -22,9 +26,6 @@ import org.eclipse.kapua.service.config.KapuaConfigurableService; import org.eclipse.kapua.storage.TxManager; -import java.util.Map; -import java.util.Optional; - /** * Base {@link KapuaConfigurableService} implementation, build upon {@link ServiceConfigurationManager}. *

@@ -60,11 +61,17 @@ public KapuaConfigurableServiceBase( @Override public boolean isServiceEnabled(KapuaId scopeId) throws KapuaException { + // Argument Validation + ArgumentValidator.notNull(scopeId, "scopeId"); + return txManager.execute(tx -> serviceConfigurationManager.isServiceEnabled(tx, scopeId)); } @Override public KapuaTocd getConfigMetadata(KapuaId scopeId) throws KapuaException { + // Argument Validation + ArgumentValidator.notNull(scopeId, "scopeId"); + // Check access authorizationService.checkPermission(permissionFactory.newPermission(domain, Actions.read, scopeId)); return txManager.execute(tx -> serviceConfigurationManager.getConfigMetadata(tx, scopeId, true)); @@ -72,6 +79,9 @@ public KapuaTocd getConfigMetadata(KapuaId scopeId) throws KapuaException { @Override public Map getConfigValues(KapuaId scopeId) throws KapuaException { + // Argument Validation + ArgumentValidator.notNull(scopeId, "scopeId"); + // Check access authorizationService.checkPermission(permissionFactory.newPermission(domain, Actions.read, scopeId)); @@ -80,6 +90,11 @@ public Map getConfigValues(KapuaId scopeId) throws KapuaExceptio @Override public void setConfigValues(KapuaId scopeId, KapuaId parentId, Map values) throws KapuaException { + // Argument Validation + ArgumentValidator.notNull(scopeId, "scopeId"); + ArgumentValidator.notNull(parentId, "parentId"); + ArgumentValidator.notEmptyOrNull(values.values(), "values"); + authorizationService.checkPermission(permissionFactory.newPermission(domain, Actions.write, scopeId)); txManager.execute(tx -> {