Apply configs' name convention to authorization roles and resource groups 11/5011/5
authorAlessandro Boch <aboch@cisco.com>
Wed, 29 Jan 2014 19:14:32 +0000 (11:14 -0800)
committerAlessandro Boch <aboch@cisco.com>
Tue, 4 Feb 2014 04:51:39 +0000 (20:51 -0800)
- Also include Switch config

Change-Id: If84199a1db6e1fc35c02c4b92493f99aeb8d8af8
Signed-off-by: Alessandro Boch <aboch@cisco.com>
opendaylight/appauth/pom.xml
opendaylight/appauth/src/main/java/org/opendaylight/controller/appauth/authorization/Authorization.java
opendaylight/configuration/api/src/main/java/org/opendaylight/controller/configuration/ConfigurationObject.java
opendaylight/switchmanager/api/src/main/java/org/opendaylight/controller/switchmanager/SwitchConfig.java

index 934fdfae80f21343dab801b0c964aadc36b479e6..30879c6565c1d78a462e5735c8104ce89965e945 100644 (file)
@@ -27,6 +27,7 @@
                 <configuration>
                     <instructions>
                         <Import-Package>
                 <configuration>
                     <instructions>
                         <Import-Package>
+                            org.opendaylight.controller.configuration,
                             org.opendaylight.controller.containermanager,
                             org.opendaylight.controller.sal.authorization,
                             org.opendaylight.controller.sal.utils,
                             org.opendaylight.controller.containermanager,
                             org.opendaylight.controller.sal.authorization,
                             org.opendaylight.controller.sal.utils,
     </build>
 
     <dependencies>
     </build>
 
     <dependencies>
+      <dependency>
+        <groupId>org.opendaylight.controller</groupId>
+        <artifactId>configuration</artifactId>
+      </dependency>
       <dependency>
         <groupId>org.opendaylight.controller</groupId>
         <artifactId>sal</artifactId>
       <dependency>
         <groupId>org.opendaylight.controller</groupId>
         <artifactId>sal</artifactId>
index 1992f5971120e37a83d3b6698732fecee2a64ee0..b70a79b4ae0bf9628dfb66d263f0315b5b350614 100644 (file)
@@ -16,6 +16,7 @@ import java.util.Map.Entry;
 import java.util.Set;
 import java.util.concurrent.ConcurrentMap;
 
 import java.util.Set;
 import java.util.concurrent.ConcurrentMap;
 
+import org.opendaylight.controller.configuration.ConfigurationObject;
 import org.opendaylight.controller.containermanager.IContainerAuthorization;
 import org.opendaylight.controller.sal.authorization.AppRoleLevel;
 import org.opendaylight.controller.sal.authorization.IResourceAuthorization;
 import org.opendaylight.controller.containermanager.IContainerAuthorization;
 import org.opendaylight.controller.sal.authorization.AppRoleLevel;
 import org.opendaylight.controller.sal.authorization.IResourceAuthorization;
@@ -36,7 +37,7 @@ import org.slf4j.LoggerFactory;
  */
 public abstract class Authorization<T> implements IResourceAuthorization {
 private static final Logger logger = LoggerFactory.getLogger(Authorization.class);
  */
 public abstract class Authorization<T> implements IResourceAuthorization {
 private static final Logger logger = LoggerFactory.getLogger(Authorization.class);
-    private static final String namesRegex = "^[a-zA-Z0-9]+[{\\.|\\_|\\-}[a-zA-Z0-9]]*$";
+    private static final String namesRegex = ConfigurationObject.getRegularExpression();
     /*
      * The configured resource groups
      */
     /*
      * The configured resource groups
      */
index 34542de896e904db4b4422cb4be4b05a83f57d30..80aed17914d3fe9f77373de2dd32a02a9e2bcac3 100644 (file)
@@ -12,7 +12,7 @@ import java.io.Serializable;
 
 public abstract class ConfigurationObject implements Serializable {
     private static final long serialVersionUID = 1L;
 
 public abstract class ConfigurationObject implements Serializable {
     private static final long serialVersionUID = 1L;
-    private static final String DEFAULT_REGEX = "^[\\w-\\+\\*\\/\\.\\(\\)\\[\\]\\@]{1,256}$";
+    private static final String DEFAULT_REGEX = "^[\\w-\\+\\*\\/\\.\\(\\)\\[\\]\\@\\|]{1,256}$";
     private static final String REGEX_PROP_NAME = "resourceNameRegularExpression";
     private static String regex;
 
     private static final String REGEX_PROP_NAME = "resourceNameRegularExpression";
     private static String regex;
 
@@ -31,7 +31,7 @@ public abstract class ConfigurationObject implements Serializable {
      *         resource name regular expression, false otherwise
      */
     protected boolean isValidResourceName(String name) {
      *         resource name regular expression, false otherwise
      */
     protected boolean isValidResourceName(String name) {
-        return (name != null) ? name.matches(regex) : false;
+        return name != null && name.matches(regex);
     }
 
     /**
     }
 
     /**
index 28c811c669f62418e836fd6ed3af0cb103e040c4..de18b021ffa0b52919544efbb0e50c655aea56b3 100644 (file)
@@ -123,8 +123,8 @@ public class SwitchConfig extends ConfigurationObject implements Cloneable, Seri
     }
 
     private Status validateNodeId() {
     }
 
     private Status validateNodeId() {
-        if (nodeId == null || nodeId.isEmpty()) {
-            return new Status(StatusCode.BADREQUEST, "NodeId cannot be empty");
+        if (!isValidResourceName(nodeId)) {
+            return new Status(StatusCode.BADREQUEST, "Invalid NodeId");
         }
         return new Status(StatusCode.SUCCESS);
     }
         }
         return new Status(StatusCode.SUCCESS);
     }