Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Creative commons Attribution-NonCommercial license. http://creativecommons.org/licenses/by-nc/2.5/au/deed.en_GB NO WARRANTY IS GIVEN OR IMPLIED, USE AT YOUR OWN RISK.
 
 package base.jee.api.sql.util;
 
import static base.jee.api.sql.util.Log.log;
public class LeaveGroup {
	public static void leaveGroup(Connection cUUID groupUUID personUser updatorthrows SQLException {
		PreparedStatement s = null;
		PreparedStatement t = null;
		ResultSet r = null;
		try {
			s = c.prepareStatement("select (select name from base_group where uuid=?), (select first_name from person where uuid=?)");
			s.setString(1, group.toString());
			s.setString(2, person.toString());
			r = s.executeQuery();
			if(r.next()) {
				if(r.getString(1) == null) {
					throw new IllegalArgumentException("Invalid group");
				}
				if(r.getString(2) == null) {
					throw new IllegalArgumentException("Invalid person");
				}
				s = c.prepareStatement("delete from group_member where group_uuid=? and person_uuid=?");
				s.setString(1, group.toString());
				s.setString(2, person.toString());
				s.execute();
				t = c.prepareStatement("update token set roles='!' where person_uuid=?");
				t.setString(1, person.toString());
				t.close();
				t = null;
				log(c"INFO"updator"Person \"" + Json.escape(r.getString(2)) + "\" left group \"" + r.getString(1) + "\""new ResourceUid("Person"updator.getPersonUuid().toString()), new ResourceUid("Group"group), new ResourceUid("Person"person));
			}
finally {
			if(r != null) { try { r.close(); } catch(SQLException e) {} }
			if(t != null) { try { t.close(); } catch(SQLException e) {} }
			if(s != null) { try { s.close(); } catch(SQLException e) {} }
		}
	}
New to GrepCode? Check out our FAQ X