summaryrefslogtreecommitdiffstats
path: root/src/com/gitblit/client/RegistrantPermissionsTableModel.java
diff options
context:
space:
mode:
authorJames Moger <james.moger@gitblit.com>2012-10-22 16:15:40 -0400
committerJames Moger <james.moger@gitblit.com>2012-10-22 16:15:40 -0400
commit87f6c3e6510986a6676872aa64aed66fe7f24b01 (patch)
tree3cd1a478734ee1049b5c6666bee49f5de8aeba5f /src/com/gitblit/client/RegistrantPermissionsTableModel.java
parentec7ac2149ba8603ff1455c948c07037bf6ee030c (diff)
downloadgitblit-87f6c3e6510986a6676872aa64aed66fe7f24b01.tar.gz
gitblit-87f6c3e6510986a6676872aa64aed66fe7f24b01.zip
Differentiate between an explicit permission and a regex permission
Diffstat (limited to 'src/com/gitblit/client/RegistrantPermissionsTableModel.java')
-rw-r--r--src/com/gitblit/client/RegistrantPermissionsTableModel.java18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/com/gitblit/client/RegistrantPermissionsTableModel.java b/src/com/gitblit/client/RegistrantPermissionsTableModel.java
index 91acec8b..fcd9c8b4 100644
--- a/src/com/gitblit/client/RegistrantPermissionsTableModel.java
+++ b/src/com/gitblit/client/RegistrantPermissionsTableModel.java
@@ -36,7 +36,7 @@ public class RegistrantPermissionsTableModel extends AbstractTableModel {
List<RegistrantAccessPermission> permissions;
enum Columns {
- Registrant, Permission;
+ Registrant, Type, Permission;
@Override
public String toString() {
@@ -72,6 +72,8 @@ public class RegistrantPermissionsTableModel extends AbstractTableModel {
switch (col) {
case Registrant:
return Translation.get("gb.name");
+ case Type:
+ return Translation.get("gb.type");
case Permission:
return Translation.get("gb.permission");
}
@@ -88,13 +90,23 @@ public class RegistrantPermissionsTableModel extends AbstractTableModel {
public Class<?> getColumnClass(int columnIndex) {
if (columnIndex == Columns.Permission.ordinal()) {
return AccessPermission.class;
+ } else if (columnIndex == Columns.Type.ordinal()) {
+ return Boolean.class;
}
return String.class;
}
@Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex == Columns.Permission.ordinal();
+ if (columnIndex == Columns.Permission.ordinal()) {
+ // in order for the permission to be editable it must be
+ // explicitly defined on the object. regex permissions are inherited
+ // and therefore can not be directly manipulated unless the current
+ // object is the source of the regex (i.e. a user or team with explicit
+ // regex definition)
+ return permissions.get(rowIndex).isExplicit;
+ }
+ return false;
}
@Override
@@ -104,6 +116,8 @@ public class RegistrantPermissionsTableModel extends AbstractTableModel {
switch (col) {
case Registrant:
return rp.registrant;
+ case Type:
+ return rp.isExplicit;
case Permission:
return rp.permission;
}