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 UpsertGroupRole {
	public static void upsertGroupRole(Connection cUUID groupUuidString roleUser updatorthrows SQLException {
		PreparedStatement s = null;
		PreparedStatement t = null;
		ResultSet r = null;
		try {
					"select (select count(*) from role where uid is null and resource is null and assignee_uuid=? and role=?), name, type " +
					"from base_group " +
					"where uuid=?");
			s.setString(1, groupUuid.toString());
			s.setString(2, role);
			s.setString(3, groupUuid.toString());
			r = s.executeQuery();
			if(r.next() && r.getInt(1) == 0) {
				if(r.getInt(3) == 0) {
							throw new IllegalArgumentException("System groups may not be assigned internal system wide roles.");
						}
					}
				}
				t = c.prepareStatement("insert into role (assignee_uuid,role) values(?,?)");
				t.setString(1, groupUuid.toString());
				t.setString(2, role);
				t.close();
				t = null;
				t = c.prepareStatement("update token set roles='!' where person_uuid in (select person_uuid from group_member where group_uuid=?)");
				t.setString(1, groupUuid.toString());
				t.close();
				t = null;
				log(c"INFO"updator"Added role \"" + Json.escape(role) + "\" for group \"" + Json.escape(r.getString(2)) + "\"."new ResourceUid("Group"groupUuid.toString()));
			}
			s.close();
			s = null;
			r.close();
			r = null;
finally {
			if(r != null) { try { r.close(); } catch(Exception f){} }
			if(s != null) { try { s.close(); } catch(Exception f){} }
			if(t != null) { try { t.close(); } catch(Exception f){} }
		}
	}
New to GrepCode? Check out our FAQ X