* 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.
public void details(boolean on) {
details = on;
}
-
+
public void setPreemptiveLur(Lur preemptive) {
this.preemptiveLur = preemptive;
}
-
+
protected abstract User<PERM> loadUser(Principal bait);
@Override
return false;
}
-
+
protected abstract boolean isCorrectPermType(Permission pond);
-
+
// This is where you build AAF CLient Code. Answer the question "Is principal "bait" in the "pond"
public boolean fish(Principal bait, Permission ... pond) {
if (preemptiveLur!=null && preemptiveLur.handles(bait)) {
}
}
}
-
+
@Override
public void remove(String user) {
super.remove(user);
}
/**
* This special case minimizes loops, avoids multiple Set hits, and calls all the appropriate Actions found.
- *
+ *
* @param bait
* @param obj
* @param type
}
}
}
-
+
public static interface Action<A> {
public String getName();
/**
*/
public boolean exec(A a);
}
-
+
private class ReuseAAFPermission extends AAFPermission {
public ReuseAAFPermission(String type, String instance) {
super(type,instance,null,null);
public void setAction(String s) {
action = s;
}
-
+
/**
- * This function understands that AAF Keys are hierarchical, :A:B:C,
+ * This function understands that AAF Keys are hierarchical, :A:B:C,
* Cassandra follows a similar method, so we'll short circuit and do it more efficiently when there isn't a first hit
* @return
*/