Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.osee.framework.core.model/src/org/eclipse/osee/framework/core/model/access/exp/AttributeTypeAccessFilter.java')
-rw-r--r--plugins/org.eclipse.osee.framework.core.model/src/org/eclipse/osee/framework/core/model/access/exp/AttributeTypeAccessFilter.java22
1 files changed, 16 insertions, 6 deletions
diff --git a/plugins/org.eclipse.osee.framework.core.model/src/org/eclipse/osee/framework/core/model/access/exp/AttributeTypeAccessFilter.java b/plugins/org.eclipse.osee.framework.core.model/src/org/eclipse/osee/framework/core/model/access/exp/AttributeTypeAccessFilter.java
index 521b233d240..df523311858 100644
--- a/plugins/org.eclipse.osee.framework.core.model/src/org/eclipse/osee/framework/core/model/access/exp/AttributeTypeAccessFilter.java
+++ b/plugins/org.eclipse.osee.framework.core.model/src/org/eclipse/osee/framework/core/model/access/exp/AttributeTypeAccessFilter.java
@@ -7,18 +7,19 @@ package org.eclipse.osee.framework.core.model.access.exp;
import org.eclipse.osee.framework.core.data.IAttributeType;
import org.eclipse.osee.framework.core.enums.PermissionEnum;
+import org.eclipse.osee.framework.core.model.Branch;
import org.eclipse.osee.framework.core.model.IBasicArtifact;
public class AttributeTypeAccessFilter extends AbstractAccessFilter {
private final PermissionEnum permission;
private final IBasicArtifact<?> artifact;
- private final IAttributeType attribute;
+ private final IAttributeType type;
- public AttributeTypeAccessFilter(PermissionEnum permission, IBasicArtifact<?> artifact, IAttributeType attribute) {
+ public AttributeTypeAccessFilter(PermissionEnum permission, IBasicArtifact<?> artifact, IAttributeType type) {
super();
this.permission = permission;
this.artifact = artifact;
- this.attribute = attribute;
+ this.type = type;
}
@Override
@@ -28,12 +29,21 @@ public class AttributeTypeAccessFilter extends AbstractAccessFilter {
@Override
public boolean acceptToObject(Object object) {
- return true;
+ //Return false if the object to be checked is a branch or artifact.
+ return (!(object instanceof Branch) && !(object instanceof IBasicArtifact<?>));
}
@Override
- public PermissionEnum filter(Object object, PermissionEnum toPermission, PermissionEnum agrPermission, AccessFilterChain filterChain) {
- return null;
+ public PermissionEnum filter(IBasicArtifact<?> artifact, Object object, PermissionEnum toPermission, PermissionEnum agrPermission, AccessFilterChain filterChain) {
+ PermissionEnum toReturn = agrPermission;
+
+ if (this.artifact.equals(artifact) && type.equals(object)) {
+ if (agrPermission != PermissionEnum.DENY && permission != null) {
+ agrPermission = permission;
+ toReturn = agrPermission;
+ }
+ }
+ return toReturn;
}
}

Back to the top