summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Wilson2014-10-14 18:54:28 +0200
committerMichael Wilson2014-10-14 18:54:28 +0200
commit8f0b1e666e98035297b95a1a8224c77d78edff36 (patch)
tree60ee3bbb3512586b017bfa8403d887a5c24fa829
parent-Wechsel ins Hauptmenü löscht nun gespeichrte Berechtigungen, die sich noch i... (diff)
downloadtutor-module-8f0b1e666e98035297b95a1a8224c77d78edff36.tar.gz
tutor-module-8f0b1e666e98035297b95a1a8224c77d78edff36.tar.xz
tutor-module-8f0b1e666e98035297b95a1a8224c77d78edff36.zip
Diverse Änderungen für Berechtigungen
-rw-r--r--dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java14
-rw-r--r--dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java201
-rw-r--r--dozentenmodul/src/main/java/gui/intro/Login_GUI.java2
-rw-r--r--dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java689
-rw-r--r--dozentenmodul/src/main/java/models/RightsManagement.java17
-rw-r--r--dozentenmodulserver/src/main/java/server/ServerHandler.java5
-rw-r--r--dozentenmodulserver/src/main/java/server/generated/Person.java670
-rw-r--r--dozentenmodulserver/src/main/java/server/generated/Server.java998
-rw-r--r--dozentenmodulserver/thrift/server.thrift9
9 files changed, 2229 insertions, 376 deletions
diff --git a/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java
index af126285..4e5ce376 100644
--- a/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java
+++ b/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java
@@ -684,15 +684,15 @@ public class FTPCreateUploader_GUI extends JFrame implements
person.verantwortlicher.getRole()
);
- for(int i=0; i< RightsManagement.rightsManagement.getPmImageCreateList().size(); i++){
- System.out.println("Writing additional rights for user "+RightsManagement.rightsManagement.getPmImageCreateList().get(i).getUserID()+", User "+i+"/"+RightsManagement.rightsManagement.getPmImageCreateList().size());
+ for(int i=0; i< RightsManagement.rightsManagement.getPermittedUserList().size(); i++){
+ System.out.println("Writing additional rights for user "+RightsManagement.rightsManagement.getPermittedUserList().get(i).getUserID()+", User "+i+"/"+RightsManagement.rightsManagement.getPermittedUserList().size());
client.writeAdditionalImageRights(
Image.image.getImagename(),
- RightsManagement.rightsManagement.getPmImageCreateList().get(i).getUserID(),
- RightsManagement.rightsManagement.getPmImageCreateList().get(i).isRead(),
- RightsManagement.rightsManagement.getPmImageCreateList().get(i).isWrite(),
- RightsManagement.rightsManagement.getPmImageCreateList().get(i).isLinkAllowed(),
- RightsManagement.rightsManagement.getPmImageCreateList().get(i).isAdmin()
+ RightsManagement.rightsManagement.getPermittedUserList().get(i).getUserID(),
+ RightsManagement.rightsManagement.getPermittedUserList().get(i).isRead(),
+ RightsManagement.rightsManagement.getPermittedUserList().get(i).isWrite(),
+ RightsManagement.rightsManagement.getPermittedUserList().get(i).isLinkAllowed(),
+ RightsManagement.rightsManagement.getPermittedUserList().get(i).isAdmin()
);
}//end for
diff --git a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
index f68b9926..b957afa6 100644
--- a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
+++ b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java
@@ -67,14 +67,15 @@ import util.OpenLinks;
@SuppressWarnings("serial")
public class PermissionCreateImage_GUI extends JFrame {
- private final static Logger LOGGER = Logger.getLogger(PermissionCreateImage_GUI.class);
+ private final static Logger LOGGER = Logger
+ .getLogger(PermissionCreateImage_GUI.class);
Client client = models.Client.clientcon.getClient();
private final JPanel contentPanel = new JPanel();
String[] result;
private JTable table = null;
private Class[] classes;
Object[] titles = { "Name", "Read", "Write", "Link", "Admin", "userID" };
- private List<Person> map = null;
+ private List<Person> map = null; // List of people who have rights
Component c = null;
// Map<String,String> ogUsers = new HashMap();
@@ -107,13 +108,13 @@ public class PermissionCreateImage_GUI extends JFrame {
private JLabel lblWriteDesc;
private JLabel lblAdminDesc;
private JLabel lblLinkallowedDesc;
- private static final String HELP_MESSAGE = "<html><div align=\"center\">" +
- "Legen Sie fest, welche Personen welche Rechte an Ihrem Image haben.<br />" +
- "Sie können die Rechte read, write, link und admin vergeben.<br />" +
- "Link bedeutet, dass diese Person Veranstaltungen auf Ihr Image verlinken darf und dieses somit<br />" +
- "implizit freigeben darf. Eine Person mit Adminrechten darf zusätzlich das Image löschen und Berechtigungen<br />" +
- "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten." +
- "</div></html>";
+ private static final String HELP_MESSAGE = "<html><div align=\"center\">"
+ + "Legen Sie fest, welche Personen welche Rechte an Ihrem Image haben.<br />"
+ + "Sie können die Rechte read, write, link und admin vergeben.<br />"
+ + "Link bedeutet, dass diese Person Veranstaltungen auf Ihr Image verlinken darf und dieses somit<br />"
+ + "implizit freigeben darf. Eine Person mit Adminrechten darf zusätzlich das Image löschen und Berechtigungen<br />"
+ + "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten."
+ + "</div></html>";
public PermissionCreateImage_GUI(Component formerGUI) {
addWindowListener(new WindowAdapter() {
@@ -135,16 +136,6 @@ public class PermissionCreateImage_GUI extends JFrame {
setBounds(0, 0, 603, 722);
setLocationRelativeTo(formerGUI);
-
-
- //
- //System.out.println("formergui X oben:"+formerGUI.getLocation().getX());
- //System.out.println("formergui Y oben:"+formerGUI.getLocation().getY());
-
- //System.out.println("this oben: "+this.getLocation().getX());
- //System.out.println("this oben: "+this.getLocation().getY());
-
- //System.out.println("------------------------------------------");
getContentPane().setLayout(null);
{
@@ -190,35 +181,28 @@ public class PermissionCreateImage_GUI extends JFrame {
panel_1.add(scrollPane);
table = new JTable();
- table.addMouseListener(new MouseAdapter()
- {
+ table.addMouseListener(new MouseAdapter() {
@Override
- public void mouseClicked(MouseEvent e)
- {
+ public void mouseClicked(MouseEvent e) {
checkIntegrity(-1);
}
});
-
+
table.setModel(model);
table.setSelectionForeground(Color.WHITE);
-
// invisible attribute userID for identifying selected user
table.getColumnModel().getColumn(5).setWidth(0);
table.getColumnModel().getColumn(5).setMinWidth(0);
table.getColumnModel().getColumn(5).setMaxWidth(0);
// if new session, get values for table from database
- if (RightsManagement.rightsManagement.getPmImageCreateList().size() <= 0) {
+ if (RightsManagement.rightsManagement.getPermittedUserList().size() <= 0) {
System.out.println("Loading data from db");
- //System.out.println(RightsManagement.rightsManagement.getPmImageCreateList().size());
-
- person.verantwortlicher.getUserID();
- //System.out.println("Current userID: " +person.verantwortlicher.getUserID());
-
try {
- map = client.getAllOtherSatelliteUsers(person.verantwortlicher.getUserID());
+ map = client.getAllOtherSatelliteUsers(person.verantwortlicher
+ .getUserID());
Iterator<server.generated.Person> i = map.iterator();
int x = 0;
@@ -239,7 +223,6 @@ public class PermissionCreateImage_GUI extends JFrame {
x++;
}
- //System.out.println("Number of returned users in permission list: "+ map.size());
} catch (TException e1) {
// TODO Auto-generated catch block
@@ -247,18 +230,19 @@ public class PermissionCreateImage_GUI extends JFrame {
}
} else // read from model
{
+ System.out.println("reading from model");
System.out
- .println("RightsManagement.rightsManagement.getPmImageCreateList().size() "
+ .println("RightsManagement.rightsManagement.getPermittedUserList().size() = "
+ RightsManagement.rightsManagement
- .getPmImageCreateList().size());
- System.out.println("reading from model");
+ .getPermittedUserList().size());
+
List<person> listt = RightsManagement.rightsManagement
- .getPmImageCreateList();
+ .getPermittedUserList();
Iterator<person> i = listt.iterator();
int x = 0;
while (i.hasNext()) {
- //System.out.println("current pos=" + x);
+ // System.out.println("current pos=" + x);
// erzeuge Objekte fuer die Tabelle
person temp = i.next();
@@ -276,9 +260,8 @@ public class PermissionCreateImage_GUI extends JFrame {
// Fuege diese Objekte der Tabelle hinzu
model.addRow(obj);
x++;
-
}
- }
+ }// end set list of permitted users
TableCellRenderer rend = table.getTableHeader().getDefaultRenderer();
@@ -287,8 +270,7 @@ public class PermissionCreateImage_GUI extends JFrame {
tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),
(String) titles[1]));
- //tc1.setCellRenderer(cellRenderer)
-
+ // tc1.setCellRenderer(cellRenderer)
TableColumn tc2 = table.getColumnModel().getColumn(2);
tc2.setCellEditor(table.getDefaultEditor(Boolean.class));
@@ -308,7 +290,6 @@ public class PermissionCreateImage_GUI extends JFrame {
tc4.setHeaderRenderer(new CheckBoxHeader(new MyItemListener4(),
(String) titles[4]));
-
scrollPane.setViewportView(table);
JPanel panel = new JPanel();
@@ -437,8 +418,8 @@ public class PermissionCreateImage_GUI extends JFrame {
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
- CreateImageTechnisch_GUI ci = new CreateImageTechnisch_GUI(c);
+ CreateImageTechnisch_GUI ci = new CreateImageTechnisch_GUI(
+ c);
ci.setVisible(true);
dispose();
}
@@ -451,11 +432,12 @@ public class PermissionCreateImage_GUI extends JFrame {
JButton continueButton = new JButton("Weiter");
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
- //before save, check integrity to avoid dblClick errors of rights
- for(int i = 0; i < table.getRowCount(); i++)
- {
- checkIntegrity(i); //check integrity of each line again
+
+ // before save, check integrity to avoid dblClick errors
+ // of rights
+ for (int i = 0; i < table.getRowCount(); i++) {
+ checkIntegrity(i); // check integrity of each line
+ // again
System.out.println("in auto-correct");
}
@@ -539,62 +521,49 @@ public class PermissionCreateImage_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmAbout);
-
+
JMenu mnNewMenu_Info = new JMenu("Info");
mnNewMenu_Info.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
- JOptionPane.showMessageDialog(c, HELP_MESSAGE, "Hilfe zu dieser Oberfläche", JOptionPane.INFORMATION_MESSAGE);
+ JOptionPane.showMessageDialog(c, HELP_MESSAGE,
+ "Hilfe zu dieser Oberfläche",
+ JOptionPane.INFORMATION_MESSAGE);
}
});
menuBar.add(mnNewMenu_Info);
c = this;
- //System.out.println("formergui unten X:"+formerGUI.getLocation().getX());
- //System.out.println("formergui unten Y:"+formerGUI.getLocation().getY());
-
- //System.out.println("this unten X: "+this.getLocation().getX());
- //System.out.println("this unten Y: "+this.getLocation().getY());
-
-
+
this.setLocationRelativeTo(formerGUI);
-
- //this.setLocation(1238, 53);
-
this.setVisible(true);
-
- //System.out.println("this on screen unten X: "+this.getLocationOnScreen().getX());
- //System.out.println("this on screen unten Y: "+this.getLocationOnScreen().getY());
- }
-
- private void checkIntegrity(int row)
- {
-
+ }// end constructor
+
+ private void checkIntegrity(int row) {
+
int selectedRow;
-
- if(row == -1)
- {
+
+ if (row == -1) {
selectedRow = table.getSelectedRow();
- }
- else
- {
+ } else {
selectedRow = row;
}
-
+
boolean isRead, isWrite, isLink, isAdmin;
-
- //collect all row data
- isRead = (boolean) table.getValueAt(selectedRow, 1);
+
+ // collect all row data
+ isRead = (boolean) table.getValueAt(selectedRow, 1);
isWrite = (boolean) table.getValueAt(selectedRow, 2);
- isLink = (boolean) table.getValueAt(selectedRow, 3);
+ isLink = (boolean) table.getValueAt(selectedRow, 3);
isAdmin = (boolean) table.getValueAt(selectedRow, 4);
-
- boolean[] checkedVals = CheckIntegrity.isIntegre(isRead, isWrite, isLink, isAdmin);
-
+
+ boolean[] checkedVals = CheckIntegrity.isIntegre(isRead, isWrite,
+ isLink, isAdmin);
+
table.setValueAt(checkedVals[0], selectedRow, 1);
table.setValueAt(checkedVals[1], selectedRow, 2);
table.setValueAt(checkedVals[2], selectedRow, 3);
table.setValueAt(checkedVals[3], selectedRow, 4);
- }
+ }// end checkIntegrity()
// Read column
class MyItemListener1 implements ItemListener {
@@ -609,7 +578,7 @@ public class PermissionCreateImage_GUI extends JFrame {
}
}
- //Write column
+ // Write column
class MyItemListener2 implements ItemListener {
public void itemStateChanged(ItemEvent e) {
Object source = e.getSource();
@@ -623,7 +592,7 @@ public class PermissionCreateImage_GUI extends JFrame {
}
}
- //Link column
+ // Link column
class MyItemListener3 implements ItemListener {
public void itemStateChanged(ItemEvent e) {
Object source = e.getSource();
@@ -636,7 +605,7 @@ public class PermissionCreateImage_GUI extends JFrame {
}
}
- //Admin column
+ // Admin column
class MyItemListener4 implements ItemListener {
public void itemStateChanged(ItemEvent e) {
Object source = e.getSource();
@@ -648,8 +617,8 @@ public class PermissionCreateImage_GUI extends JFrame {
}
}
}
-
- //invisible userID column
+
+ // invisible userID column
class MyItemListener5 implements ItemListener {
public void itemStateChanged(ItemEvent e) {
Object source = e.getSource();
@@ -662,10 +631,12 @@ public class PermissionCreateImage_GUI extends JFrame {
}
}
- public void createRightsList() {
- // /////
- }
+ // public void createRightsList() {
+ // /////
+ // }
+ // save the entered rights into the model and prepare them to be written to
+ // the database
private void saveTableToList() {
System.out.println("Saving Table to List");
@@ -674,11 +645,12 @@ public class PermissionCreateImage_GUI extends JFrame {
int seperatorIndex = 0;
// get values from table and save the checkbox values
- if(map==null) System.out.println("Fuck: map is null");
-
- //for (int i = 0; i < map.size(); i++) {
+ if (map == null)
+ System.out.println("Error: map is null");
+
+ // for (int i = 0; i < map.size(); i++) {
for (int i = 0; i < table.getRowCount(); i++) {
- //System.out.println("in for, rowcount="+table.getRowCount());
+ // System.out.println("in for, rowcount="+table.getRowCount());
person temp = new person();
// table.getModel().setValueAt(map.get, i, 5);
@@ -700,33 +672,28 @@ public class PermissionCreateImage_GUI extends JFrame {
temp.setVorname(table.getModel().getValueAt(i, 0).toString()
.substring(seperatorIndex + 2));
- //check if at least one checkbox is checked. If yes, save this entry into list, if not ignore this entry
- if (temp.isAdmin() || temp.isLinkAllowed() || temp.isWrite() || temp.isRead() ){
- //save entry
+ // check if at least one checkbox is checked. If yes, save this
+ // entry into list, if not ignore this entry
+ if (temp.isAdmin() || temp.isLinkAllowed() || temp.isWrite()
+ || temp.isRead()) {
+ // save entry
list.add(temp);
} else {
- //do nothing
+ // do nothing
}
-
-
- /*
- System.out.println(temp.getName() + ", " + temp.getVorname() + ", "
- + temp.getUserID() + ", " + temp.isAdmin() + ", "
- + temp.isLinkAllowed() + ", " + temp.isWrite() + ", "
- + temp.isRead());
- */
}
-
- System.out.println("Setting list information.\tTable size: "+table.getRowCount()+"\t List length (=selected users): "+ list.size());
+
+ System.out.println("Setting list information.\tTable size: "
+ + table.getRowCount() + "\t List length (=selected users): "
+ + list.size());
for (int y = 0; y < list.size(); y++) {
System.out.println("" + list.get(y).getName());
}
-
- RightsManagement.rightsManagement.setPmImageCreateList(list);
- }
+ RightsManagement.rightsManagement.setPermittedUserList(list);
+ }// end saveTableToList()
-}
+} // end class
class CheckBoxHeader extends JCheckBox implements TableCellRenderer,
MouseListener {
@@ -739,9 +706,6 @@ class CheckBoxHeader extends JCheckBox implements TableCellRenderer,
rendererComponent.addItemListener(itemListener);
rendererComponent.setText(text);
}
-
-
-
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
@@ -757,7 +721,6 @@ class CheckBoxHeader extends JCheckBox implements TableCellRenderer,
}
setColumn(column);
-
return rendererComponent;
}
diff --git a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java
index 323a2a00..b43c6a4d 100644
--- a/dozentenmodul/src/main/java/gui/intro/Login_GUI.java
+++ b/dozentenmodul/src/main/java/gui/intro/Login_GUI.java
@@ -214,7 +214,7 @@ public class Login_GUI extends JFrame {
panel_1.setBounds(10, 143, 334, 181);
contentPane.add(panel_1);
- rdbtnBwIDM = new JRadioButton("Regisitriert bei bwIDM");
+ rdbtnBwIDM = new JRadioButton("Registriert bei bwIDM");
rdbtnBwIDM.setBounds(32, 35, 244, 23);
panel_1.add(rdbtnBwIDM);
diff --git a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
index d449ddcf..a37b2e9c 100644
--- a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
+++ b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java
@@ -1,6 +1,5 @@
package gui.lecture;
-
import gui.intro.About_GUI;
import gui.intro.MainMenue_GUI;
@@ -20,6 +19,9 @@ import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.net.URI;
import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
import javax.swing.AbstractButton;
import javax.swing.ButtonGroup;
@@ -52,48 +54,55 @@ import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import org.apache.log4j.Logger;
+import org.apache.thrift.TException;
import models.Links;
+import models.RightsManagement;
+import models.person;
+import server.generated.Person;
+import server.generated.Server.Client;
+import util.CheckIntegrity;
import util.OpenLinks;
@SuppressWarnings("serial")
public class PermissionCreateLecture_GUI extends JFrame {
// Logger for this class
- private final static Logger LOGGER = Logger.getLogger(PermissionCreateLecture_GUI.class);
+ private final static Logger LOGGER = Logger
+ .getLogger(PermissionCreateLecture_GUI.class);
private final JPanel contentPanel = new JPanel();
+ Client client = models.Client.clientcon.getClient();
String[] result;
private Class[] classes;
- private JTable table;
- Object[] titles = { "Name","Read", "Write","Admin"};
+ private JTable table = null;
+ Object[] titles = { "Name", "Read", "Write", "Admin", "userID" };
+ // Object[] titles = { "Name", "Read", "Write", "Link", "Admin", "userID" };
Component c = null;
- private static final String HELP_MESSAGE = "<html><div align=\"center\">" +
- "Hier können Sie die Berechtigungen für Ihre Veranstaltung ändern.<br />" +
- "Es wird unterschieden, ob innerhalb der Suite (dieses Programm) Änderungen vorgenommen werden dürfen, <br />" +
- "und/oder ob die Veranstaltung auch im VMChooser angezeigt wird." +
- "</div></html>";
-
- final DefaultTableModel model = new DefaultTableModel(titles, 0){
-
-
-
- public boolean isCellEditable(int rowIndex, int mColIndex) {
- if(mColIndex>=1){
- return true;
- }
- return false;
- }
- public Class getColumnClass(int c) {
- switch(c){
- case 0:
- return String.class;
- default:
- return Boolean.class;
- }
- }
-
-
+ private static final String HELP_MESSAGE = "<html><div align=\"center\">"
+ + "Hier können Sie die Berechtigungen für Ihre Veranstaltung ändern.<br />"
+ + "Es wird unterschieden, ob innerhalb der Suite (dieses Programm) Änderungen vorgenommen werden dürfen, <br />"
+ + "und/oder ob die Veranstaltung auch im VMChooser angezeigt wird."
+ + "</div></html>";
+ private List<Person> map = null; // List of people who have rights
+
+ final DefaultTableModel model = new DefaultTableModel(titles, 0) {
+
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
+ if (mColIndex >= 1) {
+ return true;
+ }
+ return false;
+ }
+
+ public Class getColumnClass(int c) {
+ switch (c) {
+ case 0:
+ return String.class;
+ default:
+ return Boolean.class;
+ }
+ }
};
private JTextField textField;
@@ -107,7 +116,7 @@ public class PermissionCreateLecture_GUI extends JFrame {
}
});
setResizable(false);
-
+
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException
@@ -128,16 +137,18 @@ public class PermissionCreateLecture_GUI extends JFrame {
getContentPane().add(panel);
panel.setLayout(null);
{
- JLabel lblNewLabel = new JLabel("Veranstaltung - Berechtigungen (Nur zur Veranschaulichung)");
+ JLabel lblNewLabel = new JLabel(
+ "Veranstaltung - Berechtigungen (Nur zur Veranschaulichung)");
lblNewLabel.setBounds(10, 11, 509, 22);
panel.add(lblNewLabel);
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18));
}
-
+
JTextPane txtpnBitteWhlenSie = new JTextPane();
txtpnBitteWhlenSie.setEditable(false);
txtpnBitteWhlenSie.setBackground(SystemColor.menu);
- txtpnBitteWhlenSie.setText("Definieren Sie hier bitte die gewünschten Berechtigungen für Ihre Veranstaltung");
+ txtpnBitteWhlenSie
+ .setText("Definieren Sie hier bitte die gewünschten Berechtigungen für Ihre Veranstaltung");
txtpnBitteWhlenSie.setBounds(10, 36, 509, 32);
panel.add(txtpnBitteWhlenSie);
}
@@ -146,169 +157,278 @@ public class PermissionCreateLecture_GUI extends JFrame {
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel);
contentPanel.setLayout(null);
- Object[] rowdata={"Max Mustermann", new Boolean(false),new Boolean(false),new Boolean(false),new Boolean(false)};
+ Object[] rowdata = { "Max Mustermann", new Boolean(false),
+ new Boolean(false), new Boolean(false), new Boolean(false) };
model.addRow(rowdata);
-
+
+ table = new JTable();
+ table.addMouseListener(new MouseAdapter() {
+ @Override
+ public void mouseClicked(MouseEvent e) {
+ checkIntegrity(-1);
+ }
+
+ });
+
+ table.setModel(model);
+ table.setSelectionForeground(Color.WHITE);
+
+ // invisible attribute userID for identifying selected user
+ table.getColumnModel().getColumn(4).setWidth(0);
+ table.getColumnModel().getColumn(4).setMinWidth(0);
+ table.getColumnModel().getColumn(4).setMaxWidth(0);
+
+ // if new session, get values for table from database
+ if (RightsManagement.rightsManagement.getPermittedUserList().size() <= 0) {
+ System.out.println("Loading data from db");
+ // System.out.println(RightsManagement.rightsManagement.getPmImageCreateList().size());
+
+ // person.verantwortlicher.getUserID();
+ // System.out.println("Current userID: "
+ // +person.verantwortlicher.getUserID());
+
+ try {
+ map = client.getAllOtherSatelliteUsers(person.verantwortlicher
+ .getUserID());
+ Iterator<server.generated.Person> i = map.iterator();
+
+ int x = 0;
+ while (i.hasNext()) {
+ // erzeuge Objekte fuer die Tabelle
+ Object[] obj = {
+ map.get(x).getNachname() + ", "
+ + map.get(x).getVorname(), // Name
+ false, // Read
+ false, // Write
+ false, // Link
+ false, // Admin
+ map.get(x).getUserID() // userID
+ };
+ // Fuege diese Objekte der Tabelle hinzu
+ model.addRow(obj);
+ i.next();
+ x++;
+
+ }
+ // System.out.println("Number of returned users in permission list: "+
+ // map.size());
+
+ } catch (TException e1) {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ } else // read from model
+ {
+ System.out.println("reading from model");
+ System.out
+ .println("RightsManagement.rightsManagement.getPermittedUserList().size() = "
+ + RightsManagement.rightsManagement
+ .getPermittedUserList().size());
+
+ List<person> listt = RightsManagement.rightsManagement
+ .getPermittedUserList();
+ Iterator<person> i = listt.iterator();
+
+ int x = 0;
+ while (i.hasNext()) {
+ // System.out.println("current pos=" + x);
+ // erzeuge Objekte fuer die Tabelle
+ person temp = i.next();
+
+ Object[] obj = { temp.getName() + ", " + temp.getVorname(), // Name
+ temp.isRead(), // Read
+ temp.isWrite(), // Write
+ temp.isLinkAllowed(), // Link
+ temp.isAdmin(), // Admin
+ temp.getUserID() // userID
+ };
+ System.out.println("Processing: " + temp.getName() + ", "
+ + temp.getVorname() + ", " + temp.isRead() + ", "
+ + temp.isWrite() + ", " + temp.isLinkAllowed() + ", "
+ + temp.isAdmin() + ", " + temp.getUserID());
+ // Fuege diese Objekte der Tabelle hinzu
+ model.addRow(obj);
+ x++;
+ }
+ }// end set list of permitted users
+
// table wird hier nie initialisiert und ist entsprechend null
- if (table == null) LOGGER.error("NPE incoming...");
- TableColumn tc1 = table.getColumnModel().getColumn(1);
- tc1.setCellEditor(table.getDefaultEditor(Boolean.class));
- tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
- tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),(String) titles[1]));
-
- TableColumn tc2 = table.getColumnModel().getColumn(2);
- tc2.setCellEditor(table.getDefaultEditor(Boolean.class));
- tc2.setCellRenderer(table.getDefaultRenderer(Boolean.class));
- tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),(String) titles[2]));
-
- TableColumn tc3 = table.getColumnModel().getColumn(3);
- tc3.setCellEditor(table.getDefaultEditor(Boolean.class));
- tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class));
- tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),(String) titles[3]));
-
- tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),(String) titles[1]));
- tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),(String) titles[2]));
- tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),(String) titles[3]));
-
+ if (table == null)
+ LOGGER.error("NPE incoming...");
+ TableColumn tc1 = table.getColumnModel().getColumn(1);
+ tc1.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc1.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),
+ (String) titles[1]));
+
+ TableColumn tc2 = table.getColumnModel().getColumn(2);
+ tc2.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc2.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),
+ (String) titles[2]));
+
+ TableColumn tc3 = table.getColumnModel().getColumn(3);
+ tc3.setCellEditor(table.getDefaultEditor(Boolean.class));
+ tc3.setCellRenderer(table.getDefaultRenderer(Boolean.class));
+ tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),
+ (String) titles[3]));
+
+ tc1.setHeaderRenderer(new CheckBoxHeader(new MyItemListener1(),
+ (String) titles[1]));
+ tc2.setHeaderRenderer(new CheckBoxHeader(new MyItemListener2(),
+ (String) titles[2]));
+ tc3.setHeaderRenderer(new CheckBoxHeader(new MyItemListener3(),
+ (String) titles[3]));
+
JLabel lblHauptmen = new JLabel("Hauptmenü");
lblHauptmen.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
-
+
PermissionCreateLecture_GUI.this.setVisible(false);
- MainMenue_GUI main=new MainMenue_GUI(c);
+ MainMenue_GUI main = new MainMenue_GUI(c);
main.setVisible(true);
}
});
lblHauptmen.setForeground(Color.BLUE);
lblHauptmen.setBounds(10, 11, 61, 14);
contentPanel.add(lblHauptmen);
-
+
JLabel label_1 = new JLabel(">");
label_1.setBounds(69, 11, 13, 14);
contentPanel.add(label_1);
-
+
JLabel lblVlimage = new JLabel("Veranstaltung");
lblVlimage.setForeground(Color.BLUE);
lblVlimage.setBounds(81, 11, 90, 14);
contentPanel.add(lblVlimage);
-
+
JLabel label_2 = new JLabel(">");
label_2.setBounds(181, 11, 13, 14);
contentPanel.add(label_2);
-
+
JLabel lblNewLabel_1 = new JLabel("Berechtigungen");
lblNewLabel_1.setBounds(194, 11, 95, 14);
contentPanel.add(lblNewLabel_1);
-
+
JLabel lblName = new JLabel("Name:");
lblName.setBounds(10, 36, 46, 20);
contentPanel.add(lblName);
-
+
textField = new JTextField();
textField.setBounds(69, 36, 171, 20);
contentPanel.add(textField);
textField.setColumns(10);
-
+
JLabel lblHochschule = new JLabel("Hochschule:");
lblHochschule.setBounds(275, 36, 80, 20);
contentPanel.add(lblHochschule);
-
+
JComboBox comboBox = new JComboBox();
- comboBox.setModel(new DefaultComboBoxModel(new String[] {"Hochschule Offenburg", "Hochschule Reutlingen", "Universität Freiburg"}));
+ comboBox.setModel(new DefaultComboBoxModel(new String[] {
+ "Hochschule Offenburg", "Hochschule Reutlingen",
+ "Universität Freiburg" }));
comboBox.setBounds(365, 36, 202, 20);
contentPanel.add(comboBox);
-
+
JPanel panel = new JPanel();
panel.setBounds(10, 67, 557, 148);
contentPanel.add(panel);
panel.setLayout(null);
- panel.setBorder(new TitledBorder(null, "Beschreibung", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel.setBorder(new TitledBorder(null, "Beschreibung",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel.setBackground(SystemColor.menu);
-
+
JLabel label = new JLabel("Read");
label.setBounds(20, 18, 90, 20);
panel.add(label);
-
+
JLabel label_3 = new JLabel("Write");
label_3.setBounds(20, 38, 90, 20);
panel.add(label_3);
-
+
JLabel label_5 = new JLabel("Admin");
label_5.setBounds(20, 78, 90, 20);
panel.add(label_5);
-
- JLabel label_7 = new JLabel("Image darf gelesen und gestartet werden und ist in Suchfenster sichtbar.");
+
+ JLabel label_7 = new JLabel(
+ "Image darf gelesen und gestartet werden und ist in Suchfenster sichtbar.");
label_7.setBounds(120, 18, 380, 20);
panel.add(label_7);
-
- JLabel lblimageDarfAngepasst = new JLabel("<HTML>Image darf angepasst und &uuml;berschrieben, jedoch nicht gel&ouml;scht werden. Berechtigungen f&uuml;r andere Benutzer festlegen</HTML>");
+
+ JLabel lblimageDarfAngepasst = new JLabel(
+ "<HTML>Image darf angepasst und &uuml;berschrieben, jedoch nicht gel&ouml;scht werden. Berechtigungen f&uuml;r andere Benutzer festlegen</HTML>");
lblimageDarfAngepasst.setBounds(120, 38, 380, 45);
panel.add(lblimageDarfAngepasst);
-
- JLabel lblvolleRechteRead = new JLabel("<HTML>Volle Rechte: read, write, l&ouml;schen und Berechtigungen f&uuml;r andere Benutzer festlegen.</HTML>");
+
+ JLabel lblvolleRechteRead = new JLabel(
+ "<HTML>Volle Rechte: read, write, l&ouml;schen und Berechtigungen f&uuml;r andere Benutzer festlegen.</HTML>");
lblvolleRechteRead.setBounds(120, 78, 380, 40);
panel.add(lblvolleRechteRead);
-
+
JCheckBox checkBox = new JCheckBox("");
checkBox.setBounds(115, 118, 21, 23);
panel.add(checkBox);
-
+
JLabel label_4 = new JLabel("Für alle sichtbar");
label_4.setBounds(20, 119, 90, 20);
panel.add(label_4);
-
+
JPanel panel_1 = new JPanel();
panel_1.setLayout(null);
- panel_1.setBorder(new TitledBorder(null, "Suite-Berechtigungen", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_1.setBorder(new TitledBorder(null, "Suite-Berechtigungen",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_1.setBackground(SystemColor.menu);
panel_1.setBounds(10, 226, 311, 294);
contentPanel.add(panel_1);
-
+
JScrollPane scrollPane = new JScrollPane();
- scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane
+ .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
scrollPane.setBounds(10, 28, 291, 223);
panel_1.add(scrollPane);
-
+
JButton button = new JButton("Hinzufügen");
button.setEnabled(false);
button.setBounds(10, 260, 89, 23);
panel_1.add(button);
-
+
JButton button_1 = new JButton("Löschen");
button_1.setEnabled(false);
button_1.setBounds(109, 260, 89, 23);
panel_1.add(button_1);
-
+
JPanel panel_2 = new JPanel();
panel_2.setLayout(null);
- panel_2.setBorder(new TitledBorder(null, "Sichtbarkeit im VMChooser", TitledBorder.LEADING, TitledBorder.TOP, null, null));
+ panel_2.setBorder(new TitledBorder(null, "Sichtbarkeit im VMChooser",
+ TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel_2.setBackground(SystemColor.menu);
panel_2.setBounds(331, 226, 236, 294);
contentPanel.add(panel_2);
-
+
JScrollPane scrollPane_1 = new JScrollPane();
- scrollPane_1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+ scrollPane_1
+ .setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
scrollPane_1.setEnabled(false);
scrollPane_1.setBounds(23, 88, 203, 161);
panel_2.add(scrollPane_1);
-
+
JRadioButton radioButton = new JRadioButton("Sichtbar für alle");
radioButton.setSelected(true);
radioButton.setEnabled(false);
radioButton.setBounds(6, 32, 109, 23);
panel_2.add(radioButton);
-
+
JRadioButton radioButton_1 = new JRadioButton("Individuell");
radioButton_1.setEnabled(false);
radioButton_1.setBounds(6, 58, 109, 23);
panel_2.add(radioButton_1);
-
+
JButton button_2 = new JButton("Hinzufügen");
button_2.setEnabled(false);
button_2.setBounds(23, 260, 89, 23);
panel_2.add(button_2);
-
+
JButton button_3 = new JButton("Löschen");
button_3.setEnabled(false);
button_3.setBounds(122, 260, 89, 23);
@@ -323,26 +443,26 @@ public class PermissionCreateLecture_GUI extends JFrame {
JButton cancelButton = new JButton("Zurück");
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
-
- CreateLectureAllgemein_GUI sr=new CreateLectureAllgemein_GUI(c);
+
+ CreateLectureAllgemein_GUI sr = new CreateLectureAllgemein_GUI(
+ c);
sr.setVisible(true);
dispose();
}
});
cancelButton.setActionCommand("OK");
buttonPane.add(cancelButton);
- //getRootPane().setDefaultButton(cancelButton);
+ // getRootPane().setDefaultButton(cancelButton);
}
{
JButton continueButton = new JButton("Weiter");
continueButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
- CreateLectureLink_GUI ea=new CreateLectureLink_GUI(c);
+
+ CreateLectureLink_GUI ea = new CreateLectureLink_GUI(c);
ea.setVisible(true);
dispose();
-
+
}
});
continueButton.setActionCommand("Cancel");
@@ -350,34 +470,34 @@ public class PermissionCreateLecture_GUI extends JFrame {
getRootPane().setDefaultButton(continueButton);
}
}
-
+
JSeparator separator = new JSeparator();
separator.setBounds(0, 78, 597, 2);
getContentPane().add(separator);
-
+
JSeparator separator_1 = new JSeparator();
separator_1.setBounds(0, 627, 597, 2);
getContentPane().add(separator_1);
-
+
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
-
+
JMenu mnNewMenu_1 = new JMenu("Hilfe");
menuBar.add(mnNewMenu_1);
-
+
JMenuItem mntmFaq = new JMenuItem("FAQ");
mntmFaq.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent arg0) {
-
+
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getFAQ());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
@@ -385,7 +505,6 @@ public class PermissionCreateLecture_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmFaq);
-
JMenuItem mntmOtrs = new JMenuItem("OTRS");
mntmOtrs.addMouseListener(new MouseAdapter() {
@@ -393,22 +512,22 @@ public class PermissionCreateLecture_GUI extends JFrame {
public void mousePressed(MouseEvent arg0) {
OpenLinks open = new OpenLinks();
-
+
URI windows;
try {
windows = new URI(Links.getOTRS());
-
+
open.openWebpage(windows);
-
+
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
-
+
}
});
mnNewMenu_1.add(mntmOtrs);
-
+
JMenuItem mntmAbout = new JMenuItem("About");
mntmAbout.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
@@ -417,131 +536,233 @@ public class PermissionCreateLecture_GUI extends JFrame {
}
});
mnNewMenu_1.add(mntmAbout);
-
-
+
JMenu mnNewMenu_Info = new JMenu("Info");
mnNewMenu_Info.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
- JOptionPane.showMessageDialog(c, HELP_MESSAGE, "Hilfe zu dieser Oberfläche", JOptionPane.INFORMATION_MESSAGE);
+ JOptionPane.showMessageDialog(c, HELP_MESSAGE,
+ "Hilfe zu dieser Oberfläche",
+ JOptionPane.INFORMATION_MESSAGE);
}
});
menuBar.add(mnNewMenu_Info);
-
+
c = this;
-
+
+ }// end constructor
+
+ private void checkIntegrity(int row) {
+
+ int selectedRow;
+
+ if (row == -1) {
+ selectedRow = table.getSelectedRow();
+ } else {
+ selectedRow = row;
+ }
+
+ boolean isRead, isWrite, isLink, isAdmin;
+
+ // collect all row data
+ isRead = (boolean) table.getValueAt(selectedRow, 1);
+ isWrite = (boolean) table.getValueAt(selectedRow, 2);
+ isLink = (boolean) table.getValueAt(selectedRow, 3);
+ isAdmin = (boolean) table.getValueAt(selectedRow, 4);
+
+ boolean[] checkedVals = CheckIntegrity.isIntegre(isRead, isWrite,
+ isLink, isAdmin);
+
+ table.setValueAt(checkedVals[0], selectedRow, 1);
+ table.setValueAt(checkedVals[1], selectedRow, 2);
+ table.setValueAt(checkedVals[2], selectedRow, 3);
+ table.setValueAt(checkedVals[3], selectedRow, 4);
+ }// end checkIntegrity()
+
+ // Column 0 == Concat user name
+
+ // Read column
+ class MyItemListener1 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 1);
+ }
+ }
+ }
+
+ // Write column
+ class MyItemListener2 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 2);
+ }
+ }
+ }
+
+ // Admin column
+ class MyItemListener3 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 3);
+ }
+ }
+ }
+
+ // Invisible userID column
+ class MyItemListener4 implements ItemListener {
+ public void itemStateChanged(ItemEvent e) {
+ Object source = e.getSource();
+ if (source instanceof AbstractButton == false)
+ return;
+ boolean checked = e.getStateChange() == ItemEvent.SELECTED;
+ for (int x = 0, y = table.getRowCount(); x < y; x++) {
+ table.setValueAt(new Boolean(checked), x, 4);
+ }
+ }
+ }
+
+ // save the entered rights into the model and prepare them to be written to
+ // the database
+ private void saveTableToList() {
+ System.out.println("Saving Table to List");
+
+ List<person> list = new ArrayList<person>();
+
+ int seperatorIndex = 0;
+
+ // get values from table and save the checkbox values
+ if (map == null)
+ System.out.println("Error: map is null");
+
+ // for (int i = 0; i < map.size(); i++) {
+ for (int i = 0; i < table.getRowCount(); i++) {
+ // System.out.println("in for, rowcount="+table.getRowCount());
+ person temp = new person();
+
+ // table.getModel().setValueAt(map.get, i, 5);
+
+ temp.setUserID(table.getModel().getValueAt(i, 5).toString()); // get
+ // userID
+ temp.setAdmin(Boolean.parseBoolean(table.getModel()
+ .getValueAt(i, 4).toString())); // get Admin
+ temp.setLinkAllowed(Boolean.parseBoolean(table.getModel()
+ .getValueAt(i, 3).toString()));// get Link
+ temp.setWrite(Boolean.parseBoolean(table.getModel()
+ .getValueAt(i, 2).toString()));// get Write
+ temp.setRead(Boolean.parseBoolean(table.getModel().getValueAt(i, 1)
+ .toString()));// get Read
+ seperatorIndex = table.getModel().getValueAt(i, 0).toString()
+ .indexOf(",");
+ temp.setName(table.getModel().getValueAt(i, 0).toString()
+ .substring(0, seperatorIndex));
+ temp.setVorname(table.getModel().getValueAt(i, 0).toString()
+ .substring(seperatorIndex + 2));
+
+ // check if at least one checkbox is checked. If yes, save this
+ // entry into list, if not ignore this entry
+ if (temp.isAdmin() || temp.isLinkAllowed() || temp.isWrite()
+ || temp.isRead()) {
+ // save entry
+ list.add(temp);
+ } else {
+ // do nothing
+ }
+ }
+
+ System.out.println("Setting list information.\tTable size: "
+ + table.getRowCount() + "\t List length (=selected users): "
+ + list.size());
+ for (int y = 0; y < list.size(); y++) {
+ System.out.println("" + list.get(y).getName());
+ }
+
+ RightsManagement.rightsManagement.setPermittedUserList(list);
+ }// end saveTableToList()
+
+}// end class
+
+class CheckBoxHeader extends JCheckBox implements TableCellRenderer,
+ MouseListener {
+ protected CheckBoxHeader rendererComponent;
+ protected int column;
+ protected boolean mousePressed = false;
+
+ public CheckBoxHeader(ItemListener itemListener, String text) {
+ rendererComponent = this;
+ rendererComponent.addItemListener(itemListener);
+ rendererComponent.setText(text);
+ }
+
+ public Component getTableCellRendererComponent(JTable table, Object value,
+ boolean isSelected, boolean hasFocus, int row, int column) {
+ if (table != null) {
+ JTableHeader header = table.getTableHeader();
+ if (header != null) {
+ rendererComponent.setForeground(header.getForeground());
+ rendererComponent.setBackground(header.getBackground());
+ rendererComponent.setFont(header.getFont());
+ rendererComponent.setBorder(header.getBorder());
+ header.addMouseListener(rendererComponent);
+ }
+ }
+ setColumn(column);
+ // rendererComponent.setText("Check All");
+ // setBorder(UIManager.getBorder("TableHeader.cellBorder"));
+
+ return rendererComponent;
+ }
+
+ protected void setColumn(int column) {
+ this.column = column;
+ }
+
+ public int getColumn() {
+ return column;
+ }
+
+ protected void handleClickEvent(MouseEvent e) {
+ if (mousePressed) {
+ mousePressed = false;
+ JTableHeader header = (JTableHeader) (e.getSource());
+ JTable tableView = header.getTable();
+ TableColumnModel columnModel = tableView.getColumnModel();
+ int viewColumn = columnModel.getColumnIndexAtX(e.getX());
+ int column = tableView.convertColumnIndexToModel(viewColumn);
+
+ if (viewColumn == this.column && e.getClickCount() == 1
+ && column != -1) {
+ doClick();
+ }
+ }
+ }
+
+ public void mouseClicked(MouseEvent e) {
+ handleClickEvent(e);
+ ((JTableHeader) e.getSource()).repaint();
+ }
+
+ public void mousePressed(MouseEvent e) {
+ mousePressed = true;
+ }
+
+ public void mouseReleased(MouseEvent e) {
+ }
+
+ public void mouseEntered(MouseEvent e) {
+ }
+
+ public void mouseExited(MouseEvent e) {
}
- class MyItemListener1 implements ItemListener
- {
- public void itemStateChanged(ItemEvent e) {
- Object source = e.getSource();
- if (source instanceof AbstractButton == false) return;
- boolean checked = e.getStateChange() == ItemEvent.SELECTED;
- for(int x = 0, y = table.getRowCount(); x < y; x++)
- {
- table.setValueAt(new Boolean(checked),x,1);
- }
- }
- }
- class MyItemListener2 implements ItemListener
- {
- public void itemStateChanged(ItemEvent e) {
- Object source = e.getSource();
- if (source instanceof AbstractButton == false) return;
- boolean checked = e.getStateChange() == ItemEvent.SELECTED;
- for(int x = 0, y = table.getRowCount(); x < y; x++)
- {
- table.setValueAt(new Boolean(checked),x,2);
- }
- }
- }
- class MyItemListener3 implements ItemListener
- {
- public void itemStateChanged(ItemEvent e) {
- Object source = e.getSource();
- if (source instanceof AbstractButton == false) return;
- boolean checked = e.getStateChange() == ItemEvent.SELECTED;
- for(int x = 0, y = table.getRowCount(); x < y; x++)
- {
- table.setValueAt(new Boolean(checked),x,3);
- }
- }
- }
- class MyItemListener4 implements ItemListener
- {
- public void itemStateChanged(ItemEvent e) {
- Object source = e.getSource();
- if (source instanceof AbstractButton == false) return;
- boolean checked = e.getStateChange() == ItemEvent.SELECTED;
- for(int x = 0, y = table.getRowCount(); x < y; x++)
- {
- table.setValueAt(new Boolean(checked),x,4);
- }
- }
- }
}
-class CheckBoxHeader extends JCheckBox
-implements TableCellRenderer, MouseListener {
-protected CheckBoxHeader rendererComponent;
-protected int column;
-protected boolean mousePressed = false;
-
-public CheckBoxHeader(ItemListener itemListener ,String text) {
-rendererComponent = this;
-rendererComponent.addItemListener(itemListener);
-rendererComponent.setText(text);
-}
-
-public Component getTableCellRendererComponent(
- JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
-if (table != null) {
- JTableHeader header = table.getTableHeader();
- if (header != null) {
- rendererComponent.setForeground(header.getForeground());
- rendererComponent.setBackground(header.getBackground());
- rendererComponent.setFont(header.getFont());
- rendererComponent.setBorder(header.getBorder());
- header.addMouseListener(rendererComponent);
- }
-}
-setColumn(column);
-//rendererComponent.setText("Check All");
-//setBorder(UIManager.getBorder("TableHeader.cellBorder"));
-
-return rendererComponent;
-}
-protected void setColumn(int column) {
-this.column = column;
-}
-public int getColumn() {
-return column;
-}
-protected void handleClickEvent(MouseEvent e) {
-if (mousePressed) {
- mousePressed=false;
- JTableHeader header = (JTableHeader)(e.getSource());
- JTable tableView = header.getTable();
- TableColumnModel columnModel = tableView.getColumnModel();
- int viewColumn = columnModel.getColumnIndexAtX(e.getX());
- int column = tableView.convertColumnIndexToModel(viewColumn);
-
- if (viewColumn == this.column && e.getClickCount() == 1 && column != -1) {
- doClick();
- }
-}
-}
-public void mouseClicked(MouseEvent e) {
-handleClickEvent(e);
-((JTableHeader)e.getSource()).repaint();
-}
-public void mousePressed(MouseEvent e) {
-mousePressed = true;
-}
-public void mouseReleased(MouseEvent e) {
-}
-public void mouseEntered(MouseEvent e) {
-}
-public void mouseExited(MouseEvent e) {
-}
-}
diff --git a/dozentenmodul/src/main/java/models/RightsManagement.java b/dozentenmodul/src/main/java/models/RightsManagement.java
index 38661870..d2de8e8c 100644
--- a/dozentenmodul/src/main/java/models/RightsManagement.java
+++ b/dozentenmodul/src/main/java/models/RightsManagement.java
@@ -10,22 +10,19 @@ public class RightsManagement {
//
}
+ //list which holds all selected users and permissions for this session and type (either for image or lecture, depending on
+ private List<person> permittedUserList = new ArrayList<person>();
-
- //list which holds all users and (non-)selected values of the table rightstable in permissionCreateImage
- private List<person> pmImageCreateList = new ArrayList<person>();
-
-
-
+
public static RightsManagement rightsManagement = new RightsManagement();
- public List<person> getPmImageCreateList() {
- return pmImageCreateList;
+ public List<person> getPermittedUserList() {
+ return permittedUserList;
}
- public void setPmImageCreateList(List<person> list) {
- this.pmImageCreateList = list;
+ public void setPermittedUserList(List<person> list) {
+ this.permittedUserList = list;
}
}
diff --git a/dozentenmodulserver/src/main/java/server/ServerHandler.java b/dozentenmodulserver/src/main/java/server/ServerHandler.java
index e5b4caa8..af2734df 100644
--- a/dozentenmodulserver/src/main/java/server/ServerHandler.java
+++ b/dozentenmodulserver/src/main/java/server/ServerHandler.java
@@ -575,5 +575,10 @@ public class ServerHandler implements Server.Iface {
log.info(new Date() + " - written additional image rights for "+userID);
return success;
}
+
+ @Override
+ public List<Person> getPermissionForUserAndImage(String userID, String imageID) throws TException {
+ return sql.getPermissionForUserAndImage(userID, imageID);
+ }
}// end class
diff --git a/dozentenmodulserver/src/main/java/server/generated/Person.java b/dozentenmodulserver/src/main/java/server/generated/Person.java
index 19084ac9..8129579b 100644
--- a/dozentenmodulserver/src/main/java/server/generated/Person.java
+++ b/dozentenmodulserver/src/main/java/server/generated/Person.java
@@ -38,6 +38,13 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
private static final org.apache.thrift.protocol.TField USER_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("userID", org.apache.thrift.protocol.TType.STRING, (short)1);
private static final org.apache.thrift.protocol.TField NACHNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("Nachname", org.apache.thrift.protocol.TType.STRING, (short)2);
private static final org.apache.thrift.protocol.TField VORNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("Vorname", org.apache.thrift.protocol.TType.STRING, (short)3);
+ private static final org.apache.thrift.protocol.TField IMAGE_READ_FIELD_DESC = new org.apache.thrift.protocol.TField("image_read", org.apache.thrift.protocol.TType.BOOL, (short)4);
+ private static final org.apache.thrift.protocol.TField IMAGE_WRITE_FIELD_DESC = new org.apache.thrift.protocol.TField("image_write", org.apache.thrift.protocol.TType.BOOL, (short)5);
+ private static final org.apache.thrift.protocol.TField IMAGE_ADMIN_FIELD_DESC = new org.apache.thrift.protocol.TField("image_admin", org.apache.thrift.protocol.TType.BOOL, (short)6);
+ private static final org.apache.thrift.protocol.TField IMAGE_LINK_FIELD_DESC = new org.apache.thrift.protocol.TField("image_link", org.apache.thrift.protocol.TType.BOOL, (short)7);
+ private static final org.apache.thrift.protocol.TField LECTURE_READ_FIELD_DESC = new org.apache.thrift.protocol.TField("lecture_read", org.apache.thrift.protocol.TType.BOOL, (short)8);
+ private static final org.apache.thrift.protocol.TField LECTURE_WRITE_FIELD_DESC = new org.apache.thrift.protocol.TField("lecture_write", org.apache.thrift.protocol.TType.BOOL, (short)9);
+ private static final org.apache.thrift.protocol.TField LECTURE_ADMIN_FIELD_DESC = new org.apache.thrift.protocol.TField("lecture_admin", org.apache.thrift.protocol.TType.BOOL, (short)10);
private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
static {
@@ -48,12 +55,26 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
public String userID; // required
public String Nachname; // required
public String Vorname; // required
+ public boolean image_read; // required
+ public boolean image_write; // required
+ public boolean image_admin; // required
+ public boolean image_link; // required
+ public boolean lecture_read; // required
+ public boolean lecture_write; // required
+ public boolean lecture_admin; // required
/** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
public enum _Fields implements org.apache.thrift.TFieldIdEnum {
USER_ID((short)1, "userID"),
NACHNAME((short)2, "Nachname"),
- VORNAME((short)3, "Vorname");
+ VORNAME((short)3, "Vorname"),
+ IMAGE_READ((short)4, "image_read"),
+ IMAGE_WRITE((short)5, "image_write"),
+ IMAGE_ADMIN((short)6, "image_admin"),
+ IMAGE_LINK((short)7, "image_link"),
+ LECTURE_READ((short)8, "lecture_read"),
+ LECTURE_WRITE((short)9, "lecture_write"),
+ LECTURE_ADMIN((short)10, "lecture_admin");
private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
@@ -74,6 +95,20 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
return NACHNAME;
case 3: // VORNAME
return VORNAME;
+ case 4: // IMAGE_READ
+ return IMAGE_READ;
+ case 5: // IMAGE_WRITE
+ return IMAGE_WRITE;
+ case 6: // IMAGE_ADMIN
+ return IMAGE_ADMIN;
+ case 7: // IMAGE_LINK
+ return IMAGE_LINK;
+ case 8: // LECTURE_READ
+ return LECTURE_READ;
+ case 9: // LECTURE_WRITE
+ return LECTURE_WRITE;
+ case 10: // LECTURE_ADMIN
+ return LECTURE_ADMIN;
default:
return null;
}
@@ -114,6 +149,14 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
}
// isset id assignments
+ private static final int __IMAGE_READ_ISSET_ID = 0;
+ private static final int __IMAGE_WRITE_ISSET_ID = 1;
+ private static final int __IMAGE_ADMIN_ISSET_ID = 2;
+ private static final int __IMAGE_LINK_ISSET_ID = 3;
+ private static final int __LECTURE_READ_ISSET_ID = 4;
+ private static final int __LECTURE_WRITE_ISSET_ID = 5;
+ private static final int __LECTURE_ADMIN_ISSET_ID = 6;
+ private byte __isset_bitfield = 0;
public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
static {
Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -123,6 +166,20 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
tmpMap.put(_Fields.VORNAME, new org.apache.thrift.meta_data.FieldMetaData("Vorname", org.apache.thrift.TFieldRequirementType.DEFAULT,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.IMAGE_READ, new org.apache.thrift.meta_data.FieldMetaData("image_read", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.IMAGE_WRITE, new org.apache.thrift.meta_data.FieldMetaData("image_write", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.IMAGE_ADMIN, new org.apache.thrift.meta_data.FieldMetaData("image_admin", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.IMAGE_LINK, new org.apache.thrift.meta_data.FieldMetaData("image_link", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.LECTURE_READ, new org.apache.thrift.meta_data.FieldMetaData("lecture_read", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.LECTURE_WRITE, new org.apache.thrift.meta_data.FieldMetaData("lecture_write", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+ tmpMap.put(_Fields.LECTURE_ADMIN, new org.apache.thrift.meta_data.FieldMetaData("lecture_admin", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
metaDataMap = Collections.unmodifiableMap(tmpMap);
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(Person.class, metaDataMap);
}
@@ -133,18 +190,40 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
public Person(
String userID,
String Nachname,
- String Vorname)
+ String Vorname,
+ boolean image_read,
+ boolean image_write,
+ boolean image_admin,
+ boolean image_link,
+ boolean lecture_read,
+ boolean lecture_write,
+ boolean lecture_admin)
{
this();
this.userID = userID;
this.Nachname = Nachname;
this.Vorname = Vorname;
+ this.image_read = image_read;
+ setImage_readIsSet(true);
+ this.image_write = image_write;
+ setImage_writeIsSet(true);
+ this.image_admin = image_admin;
+ setImage_adminIsSet(true);
+ this.image_link = image_link;
+ setImage_linkIsSet(true);
+ this.lecture_read = lecture_read;
+ setLecture_readIsSet(true);
+ this.lecture_write = lecture_write;
+ setLecture_writeIsSet(true);
+ this.lecture_admin = lecture_admin;
+ setLecture_adminIsSet(true);
}
/**
* Performs a deep copy on <i>other</i>.
*/
public Person(Person other) {
+ __isset_bitfield = other.__isset_bitfield;
if (other.isSetUserID()) {
this.userID = other.userID;
}
@@ -154,6 +233,13 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
if (other.isSetVorname()) {
this.Vorname = other.Vorname;
}
+ this.image_read = other.image_read;
+ this.image_write = other.image_write;
+ this.image_admin = other.image_admin;
+ this.image_link = other.image_link;
+ this.lecture_read = other.lecture_read;
+ this.lecture_write = other.lecture_write;
+ this.lecture_admin = other.lecture_admin;
}
public Person deepCopy() {
@@ -165,6 +251,20 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
this.userID = null;
this.Nachname = null;
this.Vorname = null;
+ setImage_readIsSet(false);
+ this.image_read = false;
+ setImage_writeIsSet(false);
+ this.image_write = false;
+ setImage_adminIsSet(false);
+ this.image_admin = false;
+ setImage_linkIsSet(false);
+ this.image_link = false;
+ setLecture_readIsSet(false);
+ this.lecture_read = false;
+ setLecture_writeIsSet(false);
+ this.lecture_write = false;
+ setLecture_adminIsSet(false);
+ this.lecture_admin = false;
}
public String getUserID() {
@@ -239,6 +339,167 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
}
}
+ public boolean isImage_read() {
+ return this.image_read;
+ }
+
+ public Person setImage_read(boolean image_read) {
+ this.image_read = image_read;
+ setImage_readIsSet(true);
+ return this;
+ }
+
+ public void unsetImage_read() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __IMAGE_READ_ISSET_ID);
+ }
+
+ /** Returns true if field image_read is set (has been assigned a value) and false otherwise */
+ public boolean isSetImage_read() {
+ return EncodingUtils.testBit(__isset_bitfield, __IMAGE_READ_ISSET_ID);
+ }
+
+ public void setImage_readIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __IMAGE_READ_ISSET_ID, value);
+ }
+
+ public boolean isImage_write() {
+ return this.image_write;
+ }
+
+ public Person setImage_write(boolean image_write) {
+ this.image_write = image_write;
+ setImage_writeIsSet(true);
+ return this;
+ }
+
+ public void unsetImage_write() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __IMAGE_WRITE_ISSET_ID);
+ }
+
+ /** Returns true if field image_write is set (has been assigned a value) and false otherwise */
+ public boolean isSetImage_write() {
+ return EncodingUtils.testBit(__isset_bitfield, __IMAGE_WRITE_ISSET_ID);
+ }
+
+ public void setImage_writeIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __IMAGE_WRITE_ISSET_ID, value);
+ }
+
+ public boolean isImage_admin() {
+ return this.image_admin;
+ }
+
+ public Person setImage_admin(boolean image_admin) {
+ this.image_admin = image_admin;
+ setImage_adminIsSet(true);
+ return this;
+ }
+
+ public void unsetImage_admin() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __IMAGE_ADMIN_ISSET_ID);
+ }
+
+ /** Returns true if field image_admin is set (has been assigned a value) and false otherwise */
+ public boolean isSetImage_admin() {
+ return EncodingUtils.testBit(__isset_bitfield, __IMAGE_ADMIN_ISSET_ID);
+ }
+
+ public void setImage_adminIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __IMAGE_ADMIN_ISSET_ID, value);
+ }
+
+ public boolean isImage_link() {
+ return this.image_link;
+ }
+
+ public Person setImage_link(boolean image_link) {
+ this.image_link = image_link;
+ setImage_linkIsSet(true);
+ return this;
+ }
+
+ public void unsetImage_link() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __IMAGE_LINK_ISSET_ID);
+ }
+
+ /** Returns true if field image_link is set (has been assigned a value) and false otherwise */
+ public boolean isSetImage_link() {
+ return EncodingUtils.testBit(__isset_bitfield, __IMAGE_LINK_ISSET_ID);
+ }
+
+ public void setImage_linkIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __IMAGE_LINK_ISSET_ID, value);
+ }
+
+ public boolean isLecture_read() {
+ return this.lecture_read;
+ }
+
+ public Person setLecture_read(boolean lecture_read) {
+ this.lecture_read = lecture_read;
+ setLecture_readIsSet(true);
+ return this;
+ }
+
+ public void unsetLecture_read() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __LECTURE_READ_ISSET_ID);
+ }
+
+ /** Returns true if field lecture_read is set (has been assigned a value) and false otherwise */
+ public boolean isSetLecture_read() {
+ return EncodingUtils.testBit(__isset_bitfield, __LECTURE_READ_ISSET_ID);
+ }
+
+ public void setLecture_readIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LECTURE_READ_ISSET_ID, value);
+ }
+
+ public boolean isLecture_write() {
+ return this.lecture_write;
+ }
+
+ public Person setLecture_write(boolean lecture_write) {
+ this.lecture_write = lecture_write;
+ setLecture_writeIsSet(true);
+ return this;
+ }
+
+ public void unsetLecture_write() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __LECTURE_WRITE_ISSET_ID);
+ }
+
+ /** Returns true if field lecture_write is set (has been assigned a value) and false otherwise */
+ public boolean isSetLecture_write() {
+ return EncodingUtils.testBit(__isset_bitfield, __LECTURE_WRITE_ISSET_ID);
+ }
+
+ public void setLecture_writeIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LECTURE_WRITE_ISSET_ID, value);
+ }
+
+ public boolean isLecture_admin() {
+ return this.lecture_admin;
+ }
+
+ public Person setLecture_admin(boolean lecture_admin) {
+ this.lecture_admin = lecture_admin;
+ setLecture_adminIsSet(true);
+ return this;
+ }
+
+ public void unsetLecture_admin() {
+ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __LECTURE_ADMIN_ISSET_ID);
+ }
+
+ /** Returns true if field lecture_admin is set (has been assigned a value) and false otherwise */
+ public boolean isSetLecture_admin() {
+ return EncodingUtils.testBit(__isset_bitfield, __LECTURE_ADMIN_ISSET_ID);
+ }
+
+ public void setLecture_adminIsSet(boolean value) {
+ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LECTURE_ADMIN_ISSET_ID, value);
+ }
+
public void setFieldValue(_Fields field, Object value) {
switch (field) {
case USER_ID:
@@ -265,6 +526,62 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
}
break;
+ case IMAGE_READ:
+ if (value == null) {
+ unsetImage_read();
+ } else {
+ setImage_read((Boolean)value);
+ }
+ break;
+
+ case IMAGE_WRITE:
+ if (value == null) {
+ unsetImage_write();
+ } else {
+ setImage_write((Boolean)value);
+ }
+ break;
+
+ case IMAGE_ADMIN:
+ if (value == null) {
+ unsetImage_admin();
+ } else {
+ setImage_admin((Boolean)value);
+ }
+ break;
+
+ case IMAGE_LINK:
+ if (value == null) {
+ unsetImage_link();
+ } else {
+ setImage_link((Boolean)value);
+ }
+ break;
+
+ case LECTURE_READ:
+ if (value == null) {
+ unsetLecture_read();
+ } else {
+ setLecture_read((Boolean)value);
+ }
+ break;
+
+ case LECTURE_WRITE:
+ if (value == null) {
+ unsetLecture_write();
+ } else {
+ setLecture_write((Boolean)value);
+ }
+ break;
+
+ case LECTURE_ADMIN:
+ if (value == null) {
+ unsetLecture_admin();
+ } else {
+ setLecture_admin((Boolean)value);
+ }
+ break;
+
}
}
@@ -279,6 +596,27 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
case VORNAME:
return getVorname();
+ case IMAGE_READ:
+ return Boolean.valueOf(isImage_read());
+
+ case IMAGE_WRITE:
+ return Boolean.valueOf(isImage_write());
+
+ case IMAGE_ADMIN:
+ return Boolean.valueOf(isImage_admin());
+
+ case IMAGE_LINK:
+ return Boolean.valueOf(isImage_link());
+
+ case LECTURE_READ:
+ return Boolean.valueOf(isLecture_read());
+
+ case LECTURE_WRITE:
+ return Boolean.valueOf(isLecture_write());
+
+ case LECTURE_ADMIN:
+ return Boolean.valueOf(isLecture_admin());
+
}
throw new IllegalStateException();
}
@@ -296,6 +634,20 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
return isSetNachname();
case VORNAME:
return isSetVorname();
+ case IMAGE_READ:
+ return isSetImage_read();
+ case IMAGE_WRITE:
+ return isSetImage_write();
+ case IMAGE_ADMIN:
+ return isSetImage_admin();
+ case IMAGE_LINK:
+ return isSetImage_link();
+ case LECTURE_READ:
+ return isSetLecture_read();
+ case LECTURE_WRITE:
+ return isSetLecture_write();
+ case LECTURE_ADMIN:
+ return isSetLecture_admin();
}
throw new IllegalStateException();
}
@@ -340,6 +692,69 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
return false;
}
+ boolean this_present_image_read = true;
+ boolean that_present_image_read = true;
+ if (this_present_image_read || that_present_image_read) {
+ if (!(this_present_image_read && that_present_image_read))
+ return false;
+ if (this.image_read != that.image_read)
+ return false;
+ }
+
+ boolean this_present_image_write = true;
+ boolean that_present_image_write = true;
+ if (this_present_image_write || that_present_image_write) {
+ if (!(this_present_image_write && that_present_image_write))
+ return false;
+ if (this.image_write != that.image_write)
+ return false;
+ }
+
+ boolean this_present_image_admin = true;
+ boolean that_present_image_admin = true;
+ if (this_present_image_admin || that_present_image_admin) {
+ if (!(this_present_image_admin && that_present_image_admin))
+ return false;
+ if (this.image_admin != that.image_admin)
+ return false;
+ }
+
+ boolean this_present_image_link = true;
+ boolean that_present_image_link = true;
+ if (this_present_image_link || that_present_image_link) {
+ if (!(this_present_image_link && that_present_image_link))
+ return false;
+ if (this.image_link != that.image_link)
+ return false;
+ }
+
+ boolean this_present_lecture_read = true;
+ boolean that_present_lecture_read = true;
+ if (this_present_lecture_read || that_present_lecture_read) {
+ if (!(this_present_lecture_read && that_present_lecture_read))
+ return false;
+ if (this.lecture_read != that.lecture_read)
+ return false;
+ }
+
+ boolean this_present_lecture_write = true;
+ boolean that_present_lecture_write = true;
+ if (this_present_lecture_write || that_present_lecture_write) {
+ if (!(this_present_lecture_write && that_present_lecture_write))
+ return false;
+ if (this.lecture_write != that.lecture_write)
+ return false;
+ }
+
+ boolean this_present_lecture_admin = true;
+ boolean that_present_lecture_admin = true;
+ if (this_present_lecture_admin || that_present_lecture_admin) {
+ if (!(this_present_lecture_admin && that_present_lecture_admin))
+ return false;
+ if (this.lecture_admin != that.lecture_admin)
+ return false;
+ }
+
return true;
}
@@ -386,6 +801,76 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
return lastComparison;
}
}
+ lastComparison = Boolean.valueOf(isSetImage_read()).compareTo(other.isSetImage_read());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetImage_read()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.image_read, other.image_read);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetImage_write()).compareTo(other.isSetImage_write());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetImage_write()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.image_write, other.image_write);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetImage_admin()).compareTo(other.isSetImage_admin());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetImage_admin()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.image_admin, other.image_admin);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetImage_link()).compareTo(other.isSetImage_link());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetImage_link()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.image_link, other.image_link);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetLecture_read()).compareTo(other.isSetLecture_read());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetLecture_read()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lecture_read, other.lecture_read);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetLecture_write()).compareTo(other.isSetLecture_write());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetLecture_write()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lecture_write, other.lecture_write);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetLecture_admin()).compareTo(other.isSetLecture_admin());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetLecture_admin()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lecture_admin, other.lecture_admin);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
return 0;
}
@@ -429,6 +914,34 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
sb.append(this.Vorname);
}
first = false;
+ if (!first) sb.append(", ");
+ sb.append("image_read:");
+ sb.append(this.image_read);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("image_write:");
+ sb.append(this.image_write);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("image_admin:");
+ sb.append(this.image_admin);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("image_link:");
+ sb.append(this.image_link);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("lecture_read:");
+ sb.append(this.lecture_read);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("lecture_write:");
+ sb.append(this.lecture_write);
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("lecture_admin:");
+ sb.append(this.lecture_admin);
+ first = false;
sb.append(")");
return sb.toString();
}
@@ -448,6 +961,8 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
try {
+ // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+ __isset_bitfield = 0;
read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
} catch (org.apache.thrift.TException te) {
throw new java.io.IOException(te);
@@ -496,6 +1011,62 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
+ case 4: // IMAGE_READ
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.image_read = iprot.readBool();
+ struct.setImage_readIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 5: // IMAGE_WRITE
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.image_write = iprot.readBool();
+ struct.setImage_writeIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 6: // IMAGE_ADMIN
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.image_admin = iprot.readBool();
+ struct.setImage_adminIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 7: // IMAGE_LINK
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.image_link = iprot.readBool();
+ struct.setImage_linkIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 8: // LECTURE_READ
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.lecture_read = iprot.readBool();
+ struct.setLecture_readIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 9: // LECTURE_WRITE
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.lecture_write = iprot.readBool();
+ struct.setLecture_writeIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 10: // LECTURE_ADMIN
+ if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+ struct.lecture_admin = iprot.readBool();
+ struct.setLecture_adminIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
default:
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
@@ -526,6 +1097,27 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
oprot.writeString(struct.Vorname);
oprot.writeFieldEnd();
}
+ oprot.writeFieldBegin(IMAGE_READ_FIELD_DESC);
+ oprot.writeBool(struct.image_read);
+ oprot.writeFieldEnd();
+ oprot.writeFieldBegin(IMAGE_WRITE_FIELD_DESC);
+ oprot.writeBool(struct.image_write);
+ oprot.writeFieldEnd();
+ oprot.writeFieldBegin(IMAGE_ADMIN_FIELD_DESC);
+ oprot.writeBool(struct.image_admin);
+ oprot.writeFieldEnd();
+ oprot.writeFieldBegin(IMAGE_LINK_FIELD_DESC);
+ oprot.writeBool(struct.image_link);
+ oprot.writeFieldEnd();
+ oprot.writeFieldBegin(LECTURE_READ_FIELD_DESC);
+ oprot.writeBool(struct.lecture_read);
+ oprot.writeFieldEnd();
+ oprot.writeFieldBegin(LECTURE_WRITE_FIELD_DESC);
+ oprot.writeBool(struct.lecture_write);
+ oprot.writeFieldEnd();
+ oprot.writeFieldBegin(LECTURE_ADMIN_FIELD_DESC);
+ oprot.writeBool(struct.lecture_admin);
+ oprot.writeFieldEnd();
oprot.writeFieldStop();
oprot.writeStructEnd();
}
@@ -553,7 +1145,28 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
if (struct.isSetVorname()) {
optionals.set(2);
}
- oprot.writeBitSet(optionals, 3);
+ if (struct.isSetImage_read()) {
+ optionals.set(3);
+ }
+ if (struct.isSetImage_write()) {
+ optionals.set(4);
+ }
+ if (struct.isSetImage_admin()) {
+ optionals.set(5);
+ }
+ if (struct.isSetImage_link()) {
+ optionals.set(6);
+ }
+ if (struct.isSetLecture_read()) {
+ optionals.set(7);
+ }
+ if (struct.isSetLecture_write()) {
+ optionals.set(8);
+ }
+ if (struct.isSetLecture_admin()) {
+ optionals.set(9);
+ }
+ oprot.writeBitSet(optionals, 10);
if (struct.isSetUserID()) {
oprot.writeString(struct.userID);
}
@@ -563,12 +1176,33 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
if (struct.isSetVorname()) {
oprot.writeString(struct.Vorname);
}
+ if (struct.isSetImage_read()) {
+ oprot.writeBool(struct.image_read);
+ }
+ if (struct.isSetImage_write()) {
+ oprot.writeBool(struct.image_write);
+ }
+ if (struct.isSetImage_admin()) {
+ oprot.writeBool(struct.image_admin);
+ }
+ if (struct.isSetImage_link()) {
+ oprot.writeBool(struct.image_link);
+ }
+ if (struct.isSetLecture_read()) {
+ oprot.writeBool(struct.lecture_read);
+ }
+ if (struct.isSetLecture_write()) {
+ oprot.writeBool(struct.lecture_write);
+ }
+ if (struct.isSetLecture_admin()) {
+ oprot.writeBool(struct.lecture_admin);
+ }
}
@Override
public void read(org.apache.thrift.protocol.TProtocol prot, Person struct) throws org.apache.thrift.TException {
TTupleProtocol iprot = (TTupleProtocol) prot;
- BitSet incoming = iprot.readBitSet(3);
+ BitSet incoming = iprot.readBitSet(10);
if (incoming.get(0)) {
struct.userID = iprot.readString();
struct.setUserIDIsSet(true);
@@ -581,6 +1215,34 @@ public class Person implements org.apache.thrift.TBase<Person, Person._Fields>,
struct.Vorname = iprot.readString();
struct.setVornameIsSet(true);
}
+ if (incoming.get(3)) {
+ struct.image_read = iprot.readBool();
+ struct.setImage_readIsSet(true);
+ }
+ if (incoming.get(4)) {
+ struct.image_write = iprot.readBool();
+ struct.setImage_writeIsSet(true);
+ }
+ if (incoming.get(5)) {
+ struct.image_admin = iprot.readBool();
+ struct.setImage_adminIsSet(true);
+ }
+ if (incoming.get(6)) {
+ struct.image_link = iprot.readBool();
+ struct.setImage_linkIsSet(true);
+ }
+ if (incoming.get(7)) {
+ struct.lecture_read = iprot.readBool();
+ struct.setLecture_readIsSet(true);
+ }
+ if (incoming.get(8)) {
+ struct.lecture_write = iprot.readBool();
+ struct.setLecture_writeIsSet(true);
+ }
+ if (incoming.get(9)) {
+ struct.lecture_admin = iprot.readBool();
+ struct.setLecture_adminIsSet(true);
+ }
}
}
diff --git a/dozentenmodulserver/src/main/java/server/generated/Server.java b/dozentenmodulserver/src/main/java/server/generated/Server.java
index 424bd869..364331a5 100644
--- a/dozentenmodulserver/src/main/java/server/generated/Server.java
+++ b/dozentenmodulserver/src/main/java/server/generated/Server.java
@@ -90,6 +90,8 @@ public class Server {
public boolean writeAdditionalImageRights(String imageName, String userID, boolean isRead, boolean isWrite, boolean isLinkAllowed, boolean isAdmin) throws org.apache.thrift.TException;
+ public List<Person> getPermissionForUserAndImage(String userID, String imageID) throws org.apache.thrift.TException;
+
}
public interface AsyncIface {
@@ -148,6 +150,8 @@ public class Server {
public void writeAdditionalImageRights(String imageName, String userID, boolean isRead, boolean isWrite, boolean isLinkAllowed, boolean isAdmin, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+ public void getPermissionForUserAndImage(String userID, String imageID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
}
public static class Client extends org.apache.thrift.TServiceClient implements Iface {
@@ -875,6 +879,30 @@ public class Server {
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "writeAdditionalImageRights failed: unknown result");
}
+ public List<Person> getPermissionForUserAndImage(String userID, String imageID) throws org.apache.thrift.TException
+ {
+ send_getPermissionForUserAndImage(userID, imageID);
+ return recv_getPermissionForUserAndImage();
+ }
+
+ public void send_getPermissionForUserAndImage(String userID, String imageID) throws org.apache.thrift.TException
+ {
+ getPermissionForUserAndImage_args args = new getPermissionForUserAndImage_args();
+ args.setUserID(userID);
+ args.setImageID(imageID);
+ sendBase("getPermissionForUserAndImage", args);
+ }
+
+ public List<Person> recv_getPermissionForUserAndImage() throws org.apache.thrift.TException
+ {
+ getPermissionForUserAndImage_result result = new getPermissionForUserAndImage_result();
+ receiveBase(result, "getPermissionForUserAndImage");
+ if (result.isSetSuccess()) {
+ return result.success;
+ }
+ throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getPermissionForUserAndImage failed: unknown result");
+ }
+
}
public static class AsyncClient extends org.apache.thrift.async.TAsyncClient implements AsyncIface {
public static class Factory implements org.apache.thrift.async.TAsyncClientFactory<AsyncClient> {
@@ -2009,6 +2037,41 @@ public class Server {
}
}
+ public void getPermissionForUserAndImage(String userID, String imageID, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+ checkReady();
+ getPermissionForUserAndImage_call method_call = new getPermissionForUserAndImage_call(userID, imageID, resultHandler, this, ___protocolFactory, ___transport);
+ this.___currentMethod = method_call;
+ ___manager.call(method_call);
+ }
+
+ public static class getPermissionForUserAndImage_call extends org.apache.thrift.async.TAsyncMethodCall {
+ private String userID;
+ private String imageID;
+ public getPermissionForUserAndImage_call(String userID, String imageID, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+ super(client, protocolFactory, transport, resultHandler, false);
+ this.userID = userID;
+ this.imageID = imageID;
+ }
+
+ public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+ prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getPermissionForUserAndImage", org.apache.thrift.protocol.TMessageType.CALL, 0));
+ getPermissionForUserAndImage_args args = new getPermissionForUserAndImage_args();
+ args.setUserID(userID);
+ args.setImageID(imageID);
+ args.write(prot);
+ prot.writeMessageEnd();
+ }
+
+ public List<Person> getResult() throws org.apache.thrift.TException {
+ if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+ throw new IllegalStateException("Method call not finished!");
+ }
+ org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+ org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+ return (new Client(prot)).recv_getPermissionForUserAndImage();
+ }
+ }
+
}
public static class Processor<I extends Iface> extends org.apache.thrift.TBaseProcessor<I> implements org.apache.thrift.TProcessor {
@@ -2049,6 +2112,7 @@ public class Server {
processMap.put("writeLectureRights", new writeLectureRights());
processMap.put("getAllOtherSatelliteUsers", new getAllOtherSatelliteUsers());
processMap.put("writeAdditionalImageRights", new writeAdditionalImageRights());
+ processMap.put("getPermissionForUserAndImage", new getPermissionForUserAndImage());
return processMap;
}
@@ -2607,6 +2671,26 @@ public class Server {
}
}
+ public static class getPermissionForUserAndImage<I extends Iface> extends org.apache.thrift.ProcessFunction<I, getPermissionForUserAndImage_args> {
+ public getPermissionForUserAndImage() {
+ super("getPermissionForUserAndImage");
+ }
+
+ public getPermissionForUserAndImage_args getEmptyArgsInstance() {
+ return new getPermissionForUserAndImage_args();
+ }
+
+ protected boolean isOneway() {
+ return false;
+ }
+
+ public getPermissionForUserAndImage_result getResult(I iface, getPermissionForUserAndImage_args args) throws org.apache.thrift.TException {
+ getPermissionForUserAndImage_result result = new getPermissionForUserAndImage_result();
+ result.success = iface.getPermissionForUserAndImage(args.userID, args.imageID);
+ return result;
+ }
+ }
+
}
public static class AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
@@ -2647,6 +2731,7 @@ public class Server {
processMap.put("writeLectureRights", new writeLectureRights());
processMap.put("getAllOtherSatelliteUsers", new getAllOtherSatelliteUsers());
processMap.put("writeAdditionalImageRights", new writeAdditionalImageRights());
+ processMap.put("getPermissionForUserAndImage", new getPermissionForUserAndImage());
return processMap;
}
@@ -4042,6 +4127,57 @@ public class Server {
}
}
+ public static class getPermissionForUserAndImage<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getPermissionForUserAndImage_args, List<Person>> {
+ public getPermissionForUserAndImage() {
+ super("getPermissionForUserAndImage");
+ }
+
+ public getPermissionForUserAndImage_args getEmptyArgsInstance() {
+ return new getPermissionForUserAndImage_args();
+ }
+
+ public AsyncMethodCallback<List<Person>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+ final org.apache.thrift.AsyncProcessFunction fcall = this;
+ return new AsyncMethodCallback<List<Person>>() {
+ public void onComplete(List<Person> o) {
+ getPermissionForUserAndImage_result result = new getPermissionForUserAndImage_result();
+ result.success = o;
+ try {
+ fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
+ return;
+ } catch (Exception e) {
+ LOGGER.error("Exception writing to internal frame buffer", e);
+ }
+ fb.close();
+ }
+ public void onError(Exception e) {
+ byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
+ org.apache.thrift.TBase msg;
+ getPermissionForUserAndImage_result result = new getPermissionForUserAndImage_result();
+ {
+ msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
+ msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
+ }
+ try {
+ fcall.sendResponse(fb,msg,msgType,seqid);
+ return;
+ } catch (Exception ex) {
+ LOGGER.error("Exception writing to internal frame buffer", ex);
+ }
+ fb.close();
+ }
+ };
+ }
+
+ protected boolean isOneway() {
+ return false;
+ }
+
+ public void start(I iface, getPermissionForUserAndImage_args args, org.apache.thrift.async.AsyncMethodCallback<List<Person>> resultHandler) throws TException {
+ iface.getPermissionForUserAndImage(args.userID, args.imageID,resultHandler);
+ }
+ }
+
}
public static class getFtpUser_args implements org.apache.thrift.TBase<getFtpUser_args, getFtpUser_args._Fields>, java.io.Serializable, Cloneable, Comparable<getFtpUser_args> {
@@ -31957,4 +32093,866 @@ public class Server {
}
+ public static class getPermissionForUserAndImage_args implements org.apache.thrift.TBase<getPermissionForUserAndImage_args, getPermissionForUserAndImage_args._Fields>, java.io.Serializable, Cloneable, Comparable<getPermissionForUserAndImage_args> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getPermissionForUserAndImage_args");
+
+ private static final org.apache.thrift.protocol.TField USER_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("userID", org.apache.thrift.protocol.TType.STRING, (short)1);
+ private static final org.apache.thrift.protocol.TField IMAGE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("imageID", org.apache.thrift.protocol.TType.STRING, (short)2);
+
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new getPermissionForUserAndImage_argsStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new getPermissionForUserAndImage_argsTupleSchemeFactory());
+ }
+
+ public String userID; // required
+ public String imageID; // required
+
+ /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+ public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+ USER_ID((short)1, "userID"),
+ IMAGE_ID((short)2, "imageID");
+
+ private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+ static {
+ for (_Fields field : EnumSet.allOf(_Fields.class)) {
+ byName.put(field.getFieldName(), field);
+ }
+ }
+
+ /**
+ * Find the _Fields constant that matches fieldId, or null if its not found.
+ */
+ public static _Fields findByThriftId(int fieldId) {
+ switch(fieldId) {
+ case 1: // USER_ID
+ return USER_ID;
+ case 2: // IMAGE_ID
+ return IMAGE_ID;
+ default:
+ return null;
+ }
+ }
+
+ /**
+ * Find the _Fields constant that matches fieldId, throwing an exception
+ * if it is not found.
+ */
+ public static _Fields findByThriftIdOrThrow(int fieldId) {
+ _Fields fields = findByThriftId(fieldId);
+ if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+ return fields;
+ }
+
+ /**
+ * Find the _Fields constant that matches name, or null if its not found.
+ */
+ public static _Fields findByName(String name) {
+ return byName.get(name);
+ }
+
+ private final short _thriftId;
+ private final String _fieldName;
+
+ _Fields(short thriftId, String fieldName) {
+ _thriftId = thriftId;
+ _fieldName = fieldName;
+ }
+
+ public short getThriftFieldId() {
+ return _thriftId;
+ }
+
+ public String getFieldName() {
+ return _fieldName;
+ }
+ }
+
+ // isset id assignments
+ public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+ static {
+ Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+ tmpMap.put(_Fields.USER_ID, new org.apache.thrift.meta_data.FieldMetaData("userID", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.IMAGE_ID, new org.apache.thrift.meta_data.FieldMetaData("imageID", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(getPermissionForUserAndImage_args.class, metaDataMap);
+ }
+
+ public getPermissionForUserAndImage_args() {
+ }
+
+ public getPermissionForUserAndImage_args(
+ String userID,
+ String imageID)
+ {
+ this();
+ this.userID = userID;
+ this.imageID = imageID;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public getPermissionForUserAndImage_args(getPermissionForUserAndImage_args other) {
+ if (other.isSetUserID()) {
+ this.userID = other.userID;
+ }
+ if (other.isSetImageID()) {
+ this.imageID = other.imageID;
+ }
+ }
+
+ public getPermissionForUserAndImage_args deepCopy() {
+ return new getPermissionForUserAndImage_args(this);
+ }
+
+ @Override
+ public void clear() {
+ this.userID = null;
+ this.imageID = null;
+ }
+
+ public String getUserID() {
+ return this.userID;
+ }
+
+ public getPermissionForUserAndImage_args setUserID(String userID) {
+ this.userID = userID;
+ return this;
+ }
+
+ public void unsetUserID() {
+ this.userID = null;
+ }
+
+ /** Returns true if field userID is set (has been assigned a value) and false otherwise */
+ public boolean isSetUserID() {
+ return this.userID != null;
+ }
+
+ public void setUserIDIsSet(boolean value) {
+ if (!value) {
+ this.userID = null;
+ }
+ }
+
+ public String getImageID() {
+ return this.imageID;
+ }
+
+ public getPermissionForUserAndImage_args setImageID(String imageID) {
+ this.imageID = imageID;
+ return this;
+ }
+
+ public void unsetImageID() {
+ this.imageID = null;
+ }
+
+ /** Returns true if field imageID is set (has been assigned a value) and false otherwise */
+ public boolean isSetImageID() {
+ return this.imageID != null;
+ }
+
+ public void setImageIDIsSet(boolean value) {
+ if (!value) {
+ this.imageID = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case USER_ID:
+ if (value == null) {
+ unsetUserID();
+ } else {
+ setUserID((String)value);
+ }
+ break;
+
+ case IMAGE_ID:
+ if (value == null) {
+ unsetImageID();
+ } else {
+ setImageID((String)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case USER_ID:
+ return getUserID();
+
+ case IMAGE_ID:
+ return getImageID();
+
+ }
+ throw new IllegalStateException();
+ }
+
+ /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+ public boolean isSet(_Fields field) {
+ if (field == null) {
+ throw new IllegalArgumentException();
+ }
+
+ switch (field) {
+ case USER_ID:
+ return isSetUserID();
+ case IMAGE_ID:
+ return isSetImageID();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof getPermissionForUserAndImage_args)
+ return this.equals((getPermissionForUserAndImage_args)that);
+ return false;
+ }
+
+ public boolean equals(getPermissionForUserAndImage_args that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_userID = true && this.isSetUserID();
+ boolean that_present_userID = true && that.isSetUserID();
+ if (this_present_userID || that_present_userID) {
+ if (!(this_present_userID && that_present_userID))
+ return false;
+ if (!this.userID.equals(that.userID))
+ return false;
+ }
+
+ boolean this_present_imageID = true && this.isSetImageID();
+ boolean that_present_imageID = true && that.isSetImageID();
+ if (this_present_imageID || that_present_imageID) {
+ if (!(this_present_imageID && that_present_imageID))
+ return false;
+ if (!this.imageID.equals(that.imageID))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(getPermissionForUserAndImage_args other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetUserID()).compareTo(other.isSetUserID());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetUserID()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.userID, other.userID);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetImageID()).compareTo(other.isSetImageID());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetImageID()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.imageID, other.imageID);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ return 0;
+ }
+
+ public _Fields fieldForId(int fieldId) {
+ return _Fields.findByThriftId(fieldId);
+ }
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+ schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+ schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder("getPermissionForUserAndImage_args(");
+ boolean first = true;
+
+ sb.append("userID:");
+ if (this.userID == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.userID);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("imageID:");
+ if (this.imageID == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.imageID);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ // check for sub-struct validity
+ }
+
+ private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+ try {
+ write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+ try {
+ read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private static class getPermissionForUserAndImage_argsStandardSchemeFactory implements SchemeFactory {
+ public getPermissionForUserAndImage_argsStandardScheme getScheme() {
+ return new getPermissionForUserAndImage_argsStandardScheme();
+ }
+ }
+
+ private static class getPermissionForUserAndImage_argsStandardScheme extends StandardScheme<getPermissionForUserAndImage_args> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, getPermissionForUserAndImage_args struct) throws org.apache.thrift.TException {
+ org.apache.thrift.protocol.TField schemeField;
+ iprot.readStructBegin();
+ while (true)
+ {
+ schemeField = iprot.readFieldBegin();
+ if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
+ break;
+ }
+ switch (schemeField.id) {
+ case 1: // USER_ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.userID = iprot.readString();
+ struct.setUserIDIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // IMAGE_ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.imageID = iprot.readString();
+ struct.setImageIDIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ default:
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ iprot.readFieldEnd();
+ }
+ iprot.readStructEnd();
+
+ // check for required fields of primitive type, which can't be checked in the validate method
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot, getPermissionForUserAndImage_args struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.userID != null) {
+ oprot.writeFieldBegin(USER_ID_FIELD_DESC);
+ oprot.writeString(struct.userID);
+ oprot.writeFieldEnd();
+ }
+ if (struct.imageID != null) {
+ oprot.writeFieldBegin(IMAGE_ID_FIELD_DESC);
+ oprot.writeString(struct.imageID);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class getPermissionForUserAndImage_argsTupleSchemeFactory implements SchemeFactory {
+ public getPermissionForUserAndImage_argsTupleScheme getScheme() {
+ return new getPermissionForUserAndImage_argsTupleScheme();
+ }
+ }
+
+ private static class getPermissionForUserAndImage_argsTupleScheme extends TupleScheme<getPermissionForUserAndImage_args> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, getPermissionForUserAndImage_args struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ BitSet optionals = new BitSet();
+ if (struct.isSetUserID()) {
+ optionals.set(0);
+ }
+ if (struct.isSetImageID()) {
+ optionals.set(1);
+ }
+ oprot.writeBitSet(optionals, 2);
+ if (struct.isSetUserID()) {
+ oprot.writeString(struct.userID);
+ }
+ if (struct.isSetImageID()) {
+ oprot.writeString(struct.imageID);
+ }
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, getPermissionForUserAndImage_args struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ BitSet incoming = iprot.readBitSet(2);
+ if (incoming.get(0)) {
+ struct.userID = iprot.readString();
+ struct.setUserIDIsSet(true);
+ }
+ if (incoming.get(1)) {
+ struct.imageID = iprot.readString();
+ struct.setImageIDIsSet(true);
+ }
+ }
+ }
+
+ }
+
+ public static class getPermissionForUserAndImage_result implements org.apache.thrift.TBase<getPermissionForUserAndImage_result, getPermissionForUserAndImage_result._Fields>, java.io.Serializable, Cloneable, Comparable<getPermissionForUserAndImage_result> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getPermissionForUserAndImage_result");
+
+ private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new getPermissionForUserAndImage_resultStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new getPermissionForUserAndImage_resultTupleSchemeFactory());
+ }
+
+ public List<Person> success; // required
+
+ /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+ public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+ SUCCESS((short)0, "success");
+
+ private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+ static {
+ for (_Fields field : EnumSet.allOf(_Fields.class)) {
+ byName.put(field.getFieldName(), field);
+ }
+ }
+
+ /**
+ * Find the _Fields constant that matches fieldId, or null if its not found.
+ */
+ public static _Fields findByThriftId(int fieldId) {
+ switch(fieldId) {
+ case 0: // SUCCESS
+ return SUCCESS;
+ default:
+ return null;
+ }
+ }
+
+ /**
+ * Find the _Fields constant that matches fieldId, throwing an exception
+ * if it is not found.
+ */
+ public static _Fields findByThriftIdOrThrow(int fieldId) {
+ _Fields fields = findByThriftId(fieldId);
+ if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+ return fields;
+ }
+
+ /**
+ * Find the _Fields constant that matches name, or null if its not found.
+ */
+ public static _Fields findByName(String name) {
+ return byName.get(name);
+ }
+
+ private final short _thriftId;
+ private final String _fieldName;
+
+ _Fields(short thriftId, String fieldName) {
+ _thriftId = thriftId;
+ _fieldName = fieldName;
+ }
+
+ public short getThriftFieldId() {
+ return _thriftId;
+ }
+
+ public String getFieldName() {
+ return _fieldName;
+ }
+ }
+
+ // isset id assignments
+ public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+ static {
+ Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+ tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
+ new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Person.class))));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(getPermissionForUserAndImage_result.class, metaDataMap);
+ }
+
+ public getPermissionForUserAndImage_result() {
+ }
+
+ public getPermissionForUserAndImage_result(
+ List<Person> success)
+ {
+ this();
+ this.success = success;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public getPermissionForUserAndImage_result(getPermissionForUserAndImage_result other) {
+ if (other.isSetSuccess()) {
+ List<Person> __this__success = new ArrayList<Person>(other.success.size());
+ for (Person other_element : other.success) {
+ __this__success.add(new Person(other_element));
+ }
+ this.success = __this__success;
+ }
+ }
+
+ public getPermissionForUserAndImage_result deepCopy() {
+ return new getPermissionForUserAndImage_result(this);
+ }
+
+ @Override
+ public void clear() {
+ this.success = null;
+ }
+
+ public int getSuccessSize() {
+ return (this.success == null) ? 0 : this.success.size();
+ }
+
+ public java.util.Iterator<Person> getSuccessIterator() {
+ return (this.success == null) ? null : this.success.iterator();
+ }
+
+ public void addToSuccess(Person elem) {
+ if (this.success == null) {
+ this.success = new ArrayList<Person>();
+ }
+ this.success.add(elem);
+ }
+
+ public List<Person> getSuccess() {
+ return this.success;
+ }
+
+ public getPermissionForUserAndImage_result setSuccess(List<Person> success) {
+ this.success = success;
+ return this;
+ }
+
+ public void unsetSuccess() {
+ this.success = null;
+ }
+
+ /** Returns true if field success is set (has been assigned a value) and false otherwise */
+ public boolean isSetSuccess() {
+ return this.success != null;
+ }
+
+ public void setSuccessIsSet(boolean value) {
+ if (!value) {
+ this.success = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case SUCCESS:
+ if (value == null) {
+ unsetSuccess();
+ } else {
+ setSuccess((List<Person>)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case SUCCESS:
+ return getSuccess();
+
+ }
+ throw new IllegalStateException();
+ }
+
+ /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+ public boolean isSet(_Fields field) {
+ if (field == null) {
+ throw new IllegalArgumentException();
+ }
+
+ switch (field) {
+ case SUCCESS:
+ return isSetSuccess();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof getPermissionForUserAndImage_result)
+ return this.equals((getPermissionForUserAndImage_result)that);
+ return false;
+ }
+
+ public boolean equals(getPermissionForUserAndImage_result that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_success = true && this.isSetSuccess();
+ boolean that_present_success = true && that.isSetSuccess();
+ if (this_present_success || that_present_success) {
+ if (!(this_present_success && that_present_success))
+ return false;
+ if (!this.success.equals(that.success))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(getPermissionForUserAndImage_result other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetSuccess()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ return 0;
+ }
+
+ public _Fields fieldForId(int fieldId) {
+ return _Fields.findByThriftId(fieldId);
+ }
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+ schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+ schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder("getPermissionForUserAndImage_result(");
+ boolean first = true;
+
+ sb.append("success:");
+ if (this.success == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.success);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ // check for sub-struct validity
+ }
+
+ private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+ try {
+ write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+ try {
+ read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private static class getPermissionForUserAndImage_resultStandardSchemeFactory implements SchemeFactory {
+ public getPermissionForUserAndImage_resultStandardScheme getScheme() {
+ return new getPermissionForUserAndImage_resultStandardScheme();
+ }
+ }
+
+ private static class getPermissionForUserAndImage_resultStandardScheme extends StandardScheme<getPermissionForUserAndImage_result> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, getPermissionForUserAndImage_result struct) throws org.apache.thrift.TException {
+ org.apache.thrift.protocol.TField schemeField;
+ iprot.readStructBegin();
+ while (true)
+ {
+ schemeField = iprot.readFieldBegin();
+ if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
+ break;
+ }
+ switch (schemeField.id) {
+ case 0: // SUCCESS
+ if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+ {
+ org.apache.thrift.protocol.TList _list86 = iprot.readListBegin();
+ struct.success = new ArrayList<Person>(_list86.size);
+ for (int _i87 = 0; _i87 < _list86.size; ++_i87)
+ {
+ Person _elem88;
+ _elem88 = new Person();
+ _elem88.read(iprot);
+ struct.success.add(_elem88);
+ }
+ iprot.readListEnd();
+ }
+ struct.setSuccessIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ default:
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ iprot.readFieldEnd();
+ }
+ iprot.readStructEnd();
+
+ // check for required fields of primitive type, which can't be checked in the validate method
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot, getPermissionForUserAndImage_result struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.success != null) {
+ oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
+ {
+ oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.success.size()));
+ for (Person _iter89 : struct.success)
+ {
+ _iter89.write(oprot);
+ }
+ oprot.writeListEnd();
+ }
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class getPermissionForUserAndImage_resultTupleSchemeFactory implements SchemeFactory {
+ public getPermissionForUserAndImage_resultTupleScheme getScheme() {
+ return new getPermissionForUserAndImage_resultTupleScheme();
+ }
+ }
+
+ private static class getPermissionForUserAndImage_resultTupleScheme extends TupleScheme<getPermissionForUserAndImage_result> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, getPermissionForUserAndImage_result struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ BitSet optionals = new BitSet();
+ if (struct.isSetSuccess()) {
+ optionals.set(0);
+ }
+ oprot.writeBitSet(optionals, 1);
+ if (struct.isSetSuccess()) {
+ {
+ oprot.writeI32(struct.success.size());
+ for (Person _iter90 : struct.success)
+ {
+ _iter90.write(oprot);
+ }
+ }
+ }
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, getPermissionForUserAndImage_result struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ BitSet incoming = iprot.readBitSet(1);
+ if (incoming.get(0)) {
+ {
+ org.apache.thrift.protocol.TList _list91 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+ struct.success = new ArrayList<Person>(_list91.size);
+ for (int _i92 = 0; _i92 < _list91.size; ++_i92)
+ {
+ Person _elem93;
+ _elem93 = new Person();
+ _elem93.read(iprot);
+ struct.success.add(_elem93);
+ }
+ }
+ struct.setSuccessIsSet(true);
+ }
+ }
+ }
+
+ }
+
}
diff --git a/dozentenmodulserver/thrift/server.thrift b/dozentenmodulserver/thrift/server.thrift
index 31e71d4d..2fd09762 100644
--- a/dozentenmodulserver/thrift/server.thrift
+++ b/dozentenmodulserver/thrift/server.thrift
@@ -37,8 +37,14 @@ struct Person{
1: string userID,
2: string Nachname,
3: string Vorname,
+ 4: bool image_read
+ 5: bool image_write
+ 6: bool image_admin
+ 7: bool image_link
+ 8: bool lecture_read
+ 9: bool lecture_write
+ 10: bool lecture_admin
}
-
service Server{
User getFtpUser(),
int DeleteFtpUser(1: string user),
@@ -67,4 +73,5 @@ service Server{
bool writeLectureRights(1: string lecturename, 2: string username, 3: string lastName, 4: string firstName, 5: string mail, 6: string university, 7: string role),
list<Person>getAllOtherSatelliteUsers(1: string userID),
bool writeAdditionalImageRights(1: string imageName, 2: string userID, 3: bool isRead, 4: bool isWrite, 5: bool isLinkAllowed, 6: bool isAdmin),
+ list<Person>getPermissionForUserAndImage(1: string userID, 2: string imageID),
}