Fix Agent and CM Issues
[aaf/authz.git] / auth / auth-deforg / src / main / java / org / onap / aaf / org / DefaultOrgIdentity.java
index 2583262..eaa4483 100644 (file)
@@ -7,9 +7,9 @@
  * * 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
- * * 
+ * *
  *  *      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.
@@ -33,10 +33,10 @@ import org.onap.aaf.cadi.config.Config;
 import org.onap.aaf.org.Identities.Data;
 
 /**
- * Org Users are essential representations of Identities within the Org.  Since this is a highly individual 
+ * Org Users are essential representations of Identities within the Org.  Since this is a highly individual
  * thing for most Orgs, i.e. some use LDAP, some need feed, some use something else, this object will allow
  * the Organization to connect to their own Identity systems...
- * 
+ *
  *
  */
 public class DefaultOrgIdentity implements Identity {
@@ -45,7 +45,7 @@ public class DefaultOrgIdentity implements Identity {
     private static final String APPLICATION = "a";
     private static final String NON_ACTIVE = "n";
 
-    private final static int TIMEOUT = Integer.parseInt(Config.AAF_CONN_TIMEOUT_DEF);
+    final static int TIMEOUT = Integer.parseInt(Config.AAF_CONN_TIMEOUT_DEF);
 
     private DefaultOrg org;
     //package on purpose
@@ -62,7 +62,7 @@ public class DefaultOrgIdentity implements Identity {
                 Reuse r = org.identities.reuse();
                 int at = key.indexOf(dorg.getDomain());
                 String search;
-                if(at>=0) {
+                if (at>=0) {
                     search = key.substring(0,at);
                 } else {
                     search = key;
@@ -71,7 +71,7 @@ public class DefaultOrgIdentity implements Identity {
 
 
 
-                if(identity==null) {
+                if (identity==null) {
                     identity = Identities.NO_DATA;
                 }
             } finally {
@@ -84,7 +84,7 @@ public class DefaultOrgIdentity implements Identity {
 
     @Override
     public boolean equals(Object b) {
-        if(b instanceof DefaultOrgIdentity) {
+        if (b instanceof DefaultOrgIdentity) {
             return identity.id.equals(((DefaultOrgIdentity)b).identity.id);
         }
         return false;
@@ -120,10 +120,14 @@ public class DefaultOrgIdentity implements Identity {
 
     @Override
     public Identity responsibleTo() throws OrganizationException {
-        if("".equals(identity.responsibleTo) && isFound()) { // cover the situation of Top Dog... reports to no-one.
-            return this;
+       if(isFound()) {
+               if ("".equals(identity.responsibleTo)) { // cover the situation of Top Dog... reports to no-one.
+                   return this;
+               } else {
+                   return org.getIdentity(trans, identity.responsibleTo);
+               }
         } else {
-            return org.getIdentity(trans, identity.responsibleTo);
+               throw new OrganizationException("Identity doesn't exist");
         }
     }
 
@@ -151,9 +155,9 @@ public class DefaultOrgIdentity implements Identity {
     @Override
     public String mayOwn() {
         // Assume only Employees are responsible for Resources.
-        if(identity.status==null|| identity.status.length()==0) {
+        if (identity.status==null|| identity.status.length()==0) {
             return "Identity must have valid status";
-        } else if(EMPLOYEE.equals(identity.status)) {
+        } else if (EMPLOYEE.equals(identity.status)) {
             return null; // This is "Yes, is Responsible"
         } else {
             return "Reponsible Party must be an Employee";