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.cassandra;
  
 import java.util.Date;
 import java.util.UUID;
 
 import base.Command;
 import base.json.Json;
 
 import static base.jee.api.cassandra.util.Log.log;
 import static base.text.StringHelper.chomp;
 
 public class UpdatePerson extends Command {
 
 	private CassandraAPI c;
 	private UUID uuid;
 	private User user;
 	private String firstName;
 	private String lastName;
 	private String email;
 	private Date expiry;
 
 	public UpdatePerson() {
 	}
 
 	public UpdatePerson(CassandraAPI cUser userUUID uuidString firstNameString lastNameString emailString expirythrows PermissionException {
 		if(c == null) {
 			throw new IllegalArgumentException("Invalid parameter: c");
 		}
 		if(firstName == null || chomp(firstName).length() == 0) {
 			throw new IllegalArgumentException("Invalid parameter: firstName");
 		}
 		if(lastName == null || chomp(lastName).length() == 0) {
 			throw new IllegalArgumentException("Invalid parameter: lastName");
 		}
 		if(email == null || chomp(email).length() == 0) {
 			throw new IllegalArgumentException("Invalid parameter: email");
 		}
 		if(chomp(email).length() > .) {
 			throw new IllegalArgumentException("Please choose a shorter email address. Email should not have more than " + . + " characters.");
 		}
 		if(!parse.isValid(chomp(email).toLowerCase())) {
 			throw new IllegalArgumentException("Invalid email address. " + parse.getError());
 		}
 		if(user == null || !user.isAuthenticated()) {
 			throw new PermissionException(this.getClass().getSimpleName(), user"Requires an authenticated user.""");
 		}
 		if(uuid == null) {
 			throw new IllegalArgumentException("Invalid parameter: person_uuid");
 		}
 
 		if(chomp(firstName).length() > .) {
 			throw new IllegalArgumentException("Please choose a shorter first name. First name should not have more than " + . + " characters.");
 		}
 		if(chomp(lastName).length() > .) {
 			throw new IllegalArgumentException("Please choose a shorter last name. Last name should not have more than " + . + " characters.");
 		}
 		if(expiry != null && expiry.length() > 0) {
 			try {
 				this. = ..parse(expiry);
 			} catch (ParseException e1) {
 				throw new IllegalArgumentException("Please leave expiry field empty, or enter date using date format: " + .);
 			}
 		}
 
 		this. = c;
 		this. = uuid;
 		this. = chomp(firstName);
 		this. = chomp(lastName);
 		this. = chomp(email).toLowerCase();
 		this. = user;
 	}
 
 	protected void execute() throws IOException {
 
 
 			log(s"WARN""Permission denied invoking: " + UpdatePerson.class.getSimpleName() + " " + getJsonParameters());
 			throw new IllegalStateException("You do not have permission to create new user accounts.");
 		}
		PreparedStatement p = s.prepare("select uuid from person where email = ? limit 1");
		for(Row r : s.execute(p.bind())) {
			if(!r.getUUID(0).equals()) {
				throw new IllegalArgumentException("Person already exists with this email address.");
			}
		}
		PreparedStatement t = s.prepare("update person set first_name=?, last_name=?, email=?, updated=?, expiry=? where uuid=?");
		s.execute(t.bind(new Date().getTime(),  == null ? 0 : .getTime(), ));
		log(s"INFO""Updated person " +  + " " + new ResourceUid("Person"));
	}
		return "{" +
				"\"first_name\":\"" + Json.escape()+ "\"," +
				"\"last_name\":\"" + Json.escape()+ "\"," +
				"\"email\":\"" + Json.escape()+ "\"" +
				"}";
	}
New to GrepCode? Check out our FAQ X