summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java
diff options
context:
space:
mode:
authorJonathan Bauer2017-09-06 13:48:33 +0200
committerJonathan Bauer2017-09-06 13:48:33 +0200
commite310fa0738149f20b9de6b173d3d175857b0c748 (patch)
tree5857811d25cc53c51590cc0158ec84e049a3ed88 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java
parent[client] Update apache httpclient, pass custom client to ecp-client-lean (diff)
downloadtutor-module-e310fa0738149f20b9de6b173d3d175857b0c748.tar.gz
tutor-module-e310fa0738149f20b9de6b173d3d175857b0c748.tar.xz
tutor-module-e310fa0738149f20b9de6b173d3d175857b0c748.zip
[client/server] network share feature [WIP]
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java47
1 files changed, 47 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java
new file mode 100644
index 00000000..7ebde4eb
--- /dev/null
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/table/NetshareTable.java
@@ -0,0 +1,47 @@
+package org.openslx.dozmod.gui.control.table;
+
+import org.openslx.bwlp.thrift.iface.NetShare;
+import org.openslx.dozmod.thrift.Sorters;
+import org.openslx.dozmod.util.FormatHelper;
+
+@SuppressWarnings("serial")
+public class NetshareTable extends ListTable<NetShare> {
+
+ public static final ListTableColumn COL_PATH = new ListTableColumn("Pfad");
+ public static final ListTableColumn COL_TYPE = new ListTableColumn("Typ", Sorters.netShareAuth);
+ public static final ListTableColumn COL_USER = new ListTableColumn("Username");
+ public static final ListTableColumn COL_PASSWORD = new ListTableColumn("Passwort");
+
+ public NetshareTable() {
+ super(COL_PATH, COL_TYPE, COL_USER, COL_PASSWORD);
+ }
+
+ @Override
+ protected Object getValueAtInternal(NetShare item, ListTableColumn columnIndex) {
+ if (columnIndex == COL_PATH)
+ return item.path;
+ if (columnIndex == COL_TYPE)
+ return FormatHelper.netShareAuthName(item.auth);
+ if (columnIndex == COL_USER)
+ return item.username;
+ if (columnIndex == COL_PASSWORD)
+ return item.password;
+ //TODO others!
+ throw new IndexOutOfBoundsException();
+ }
+
+ @Override
+ public Object modelValueToDisplayFormat(Object object, ListTableColumn column) {
+ if (column == COL_PATH)
+ return (String) object;
+ if (column == COL_TYPE)
+ return object.toString();
+ if (column == COL_USER)
+ return (String) object;
+ if (column == COL_PASSWORD) {
+ String pass = (String) object;
+ return pass != null ? pass.replaceAll(".", "*") : "";
+ }
+ throw new IndexOutOfBoundsException();
+ }
+}