Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   *  Copyright (c) 2011 Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany.
   *  All rights reserved. This program and the accompanying materials
   *  are made available under the terms of the GNU Lesser Public License v2.1
   *  which accompanies this distribution, and is available at
   *  http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
   *
   *  Contributors:
   *      Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany - RMI Client, FileChooser and WebDAV
  */
 package de.ipk_gatersleben.bit.bi.edal.rmi.client.gui.editor;
 
 import java.util.List;
 
 
PermissionNewuserDialog provides a mechanism for the user to add new users and manage there permissions of EDAL File System.

The following code pops up a PermissionNewuserDialog for the user's directory

 PermissionNewuserDialog permission = new PermissionNewuserDialog(directory,
   client);
 permission.showOpenDialog();
 

Author(s):
Jinbo Chen
Version:
1.0
 
 public class PermissionNewuserDialog extends JDialog {
 	private static final long serialVersionUID = 1L;

Return value if cancel is chosen.
 
 	public static final int CANCEL_OPTION = 1;
Return value if approve (yes, ok) is chosen.
 
 	public static final int APPROVE_OPTION = 0;
 
 	private static final String DEFAULT_SOURCE_CHOICE_LABEL = "Available Permissions";
 	private static final String DEFAULT_DEST_CHOICE_LABEL = "Assigned Permissions";
 	private static final String ADD_BUTTON_LABEL = "Add >>";
 	private static final String REMOVE_BUTTON_LABEL = "<< Remove";
 	private static final Insets EMPTY_INSETS = new Insets(0, 0, 0, 0);
 
 	private JButton savebtn;
 	private JButton cancelbtn;
 
 	public int returnvalue;
 
 	private JList sourceList;
 	private JList destList;
	private JLabel destLabel;
	private List<Stringprincipals = new ArrayList<String>();
	private List<Class<? extends Principal>> supportedprincipals;
	private JTextField usertext = new JTextField();
Constructs a PermissionNewuserDialog that is initialized with dataentry as the EDAL dataentry, and client as the rmi client datamanager. If any of the parameters are null this method will not initialize.

Parameters:
dataentry the EDAL dataentry
client the rmi client datamanager
		this. = dataentry;
		this. = client;
		setTitle("Add NewUser");
		JPanel contents = (JPanelgetContentPane();
		contents.setLayout(new BorderLayout());
		JPanel userselectpanel = new JPanel();
		JLabel principallabel = new JLabel("UserName:".);
		userselectpanel.add(principallabel);
		userselectpanel.add();
		for (Class<? extends Principalobj : ) {
		}
		userselectpanel.add();
		JPanel permissioneditpanel = new JPanel();
		initpermissionpanel(permissioneditpanel);
		JPanel editPane = new JPanel();
		editPane.setLayout(new BorderLayout());
		editPane.add(userselectpanel.);
		editPane.add(permissioneditpanel.);
		contents.add(editPane.);
		this.setSize(new Dimension(600, (int) (600 * 0.618)));
	}

pop up a PermissionNewuserDialog Dialog
	public int showOpenDialog() {
		setModal(true);
		return ;
	}
	private void initpermissionpanel(JPanel permissioneditpanel) {
		permissioneditpanel.setBorder(BorderFactory.createEtchedBorder());
		permissioneditpanel.setLayout(new GridBagLayout());
		permissioneditpanel.add(sourceLabelnew GridBagConstraints(0, 0, 1, 1,
				, 0, 0));
		permissioneditpanel.add(new JScrollPane(),
				new GridBagConstraints(0, 1, 1, 5, .5, 1,
						, 0, 0));
		JButton addButton = new JButton();
		permissioneditpanel.add(addButtonnew GridBagConstraints(1, 2, 1, 2,
				, 0, 0));
		addButton.addActionListener(new AddListener());
		permissioneditpanel.add(new GridBagConstraints(1, 4, 1,
				new Insets(0, 5, 0, 5), 0, 0));
		permissioneditpanel.add(new GridBagConstraints(2, 0, 1, 1,
				, 0, 0));
		permissioneditpanel.add(new JScrollPane(),
				new GridBagConstraints(2, 1, 1, 5, .5, 1.0,
						, 0, 0));
	}
	private void refreshPrincipals() {
		List<Methodsallavailablenoselectedmethods = new ArrayList<Methods>();
		for (Methods method : ) {
			allavailablenoselectedmethods.add(method);
		}
		addSourceElements(allavailablenoselectedmethods.toArray(new Methods[0]));
	}
	private void loadconstants() {
		try {
			if ( != null) {
				for (GrantableMethods.Methods m : commonskeysets) {
				}
					for (GrantableMethods.Methods m : keysets) {
					}
else {
					for (GrantableMethods.Methods m : keysets) {
					}
				}
			}
catch (RemoteException e) {
			JOptionPane.showMessageDialog(
					null,
					"Call remote Edal server function exception:"
e.getMessage(), "EdalFileChooser",
catch (EdalException e) {
			JOptionPane.showMessageDialog(null,
					"Call Edal server function exception:" + e.getMessage(),
					"EdalFileChooser".);
		}
	}
	private void fillListModel(SortedListModel modelListModel newValues) {
		int size = newValues.getSize();
		for (int i = 0; i < sizei++) {
			model.add(newValues.getElementAt(i));
		}
	}
	private void fillListModel(SortedListModel modelObject newValues[]) {
		model.addAll(newValues);
	}
	public void addDestinationElements(Object newValue[]) {
	}
	public void addSourceElements(ListModel newValue) {
	}
	public void addSourceElements(Object newValue[]) {
	}
	public void clearSourceListModel() {
	}
	public void clearDestinationListModel() {
	}
	private void clearSourceSelected() {
		for (int i = selected.length - 1; i >= 0; --i) {
		}
	}
	private void clearDestinationSelected() {
		for (int i = selected.length - 1; i >= 0; --i) {
		}
	}
	private class AddListener implements ActionListener {
		public void actionPerformed(ActionEvent e) {
		}
	}
	private class RemoveListener implements ActionListener {
		public void actionPerformed(ActionEvent e) {
		}
	}
		JPanel buttonPane = new JPanel(new FlowLayout(., 5, 5));
		buttonPane.add();
		buttonPane.add();
		return buttonPane;
	}
	private void assignpermission() {
		// get principal
		String currentuser = .getText().trim();
		if (currentuser.length() == 0) {
			JOptionPane.showMessageDialog(null"Please Input UserName!",
					"EdalFileChooser".);
		}
		String currentprincipalname = .get(
		Principal currentprincipal = PrincipalUtil.getInstance(
				currentprincipalnamecurrentuser);
		// grant permissions to user
		int destsize = .getSize();
		for (int i = 0; i < destsizei++) {
			try {
				boolean isin = PrincipalUtil.checkPermission(,
						currentprincipalnamecurrentuser
				if (!isin) {
					.grantPermission(currentprincipal, Methods
				}
catch (RemoteException ex) {
						.error(StackTraceUtil.getStackTrace(ex));
				JOptionPane.showMessageDialog(
						null,
						"Call remote Edal server function exception:"
ex.getMessage(), "EdalFileChooser",
catch (Exception ex) {
						.error(StackTraceUtil.getStackTrace(ex));
				JOptionPane.showMessageDialog(
						null,
						"Call Edal server function exception:"
ex.getMessage(), "EdalFileChooser",
			}
		}
		JOptionPane.showMessageDialog(null"Grant permissions finish!",
				"EdalFileChooser".);
	}
	private Action okAction = new AbstractAction("Ok") {
		private static final long serialVersionUID = 1L;
		public void actionPerformed(ActionEvent e) {
		}
	};
	private Action cancelAction = new AbstractAction("Cancel") {
		private static final long serialVersionUID = 1L;
		public void actionPerformed(ActionEvent e) {
		}
	};
	public SortedListModel() {
		 = new TreeSet();
	}
	public int getSize() {
		return .size();
	}
	public Object getElementAt(int index) {
		return .toArray()[index];
	}
	public void add(Object element) {
		if (.add(element)) {
		}
	}
	public void addAll(Object elements[]) {
		Collection c = Arrays.asList(elements);
	}
	public void clear() {
	}
	public boolean contains(Object element) {
		return .contains(element);
	}
	public Object firstElement() {
		return .first();
	}
	public Iterator iterator() {
		return .iterator();
	}
	public Object lastElement() {
		return .last();
	}
	public boolean removeElement(Object element) {
		boolean removed = .remove(element);
		if (removed) {
		}
		return removed;
	}
New to GrepCode? Check out our FAQ X