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;
  
 import java.util.Map;
 
 
 import base.Command;
 
 import static base.jee.api.sql.util.SqlFilter.sqlFilter;
 
 public class Setup extends Command {
 
 	private DataSource ds;
 
 	public Setup(DataSource ds) {
 		this. = ds;
 
 		if(ds == null) {
 			throw new IllegalArgumentException("Invalid parameter: ds");
 		}
 	}
 
 	protected void execute() throws IOException {
 		Connection c = null;
 		try {
 			c = .getConnection();
 			c.setAutoCommit(false);
 
 			int type = 0;
 				type = 1;
 			}
 
 
 			s = c.prepareStatement(sqlFilter("create table if not exists email (uuid char(36) primary key, to_address varchar(250), email text, retries integer, attempt_at bigint, in_progress boolean)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists person (uuid char(36) primary key, first_name varchar(128), last_name varchar(128), email varchar(250), username varchar(100), password text, last_auth bigint, last_auth_ip text, created bigint, updated bigint, expiry bigint)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists batch_load_info (uuid char(36), requestor char(36), executed bigint, primary key(uuid))"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists batch_load_result (uuid char(36), sort_order int, value text, primary key(uuid, sort_order))"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists base_group (uuid char(36) primary key, name varchar(128), type int)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists group_member (group_uuid char(36), person_uuid char(36), joined bigint, primary key (group_uuid, person_uuid))"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists token (token char(64) primary key, person_uuid char(36), expiry integer, roles text, created integer)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists request_token (token varchar(64) primary key, person_uuid char(36), expiry integer, type varchar(64), ip varchar(64), data text)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists audit_event (uuid char(36) primary key, person_uuid char(36), level varchar(16), message text, event_time bigint, ip text)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists audit_type (audit_event_uuid char(36), resource_uid varchar(64), resource_type varchar(64))"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists person_setting (uuid char(36), name varchar(64), value text, primary key (uuid, name))"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists role (assignee_uuid char(36), role varchar(64), resource varchar(64), uid varchar(64))"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists setting (name varchar(64) primary key, value text)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists update_notification (uuid char(36) primary key not null, updator char(36), updated bigint, type varchar(64), action varchar(64), uid varchar(250), delivered boolean)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists template (name varchar(64) primary key)"type));
 			s.execute();
 			s.close();
 			s = c.prepareStatement(sqlFilter("create table if not exists template_resource (template varchar(64), resource varchar(64), content blob, isbinary boolean)"type));
 			s.execute();
 			s.close();
			s = c.prepareStatement(sqlFilter("create table if not exists throttle (key_value varchar(64) primary key, attempts int, updated bigint)"type));
			s.close();
			s = c.prepareStatement(sqlFilter("create table if not exists ip_location (start_ip bigint, end_ip bigint, location bigint, primary key (start_ip))"type));
			s.close();
			s = c.prepareStatement(sqlFilter("create table if not exists location (id bigint, country text, city text, latitude double, longitude double, primary key(id))"type));
			s.close();
			try {
				s = c.prepareStatement("CREATE INDEX template_resource_lookup on template_resource (template, resource)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX ip_location_start on ip_location (start_ip desc)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX batch_load_result_idx on batch_load_result (uuid)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX token_idx on token (token)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("create index token_person on token(person_uuid,token);");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX request_token_idx on request_token (token)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX audit_event_person_time on audit_event (person_uuid, event_time desc)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX audit_event_ip_time on audit_event (ip, event_time desc)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("CREATE INDEX audit_event_time on audit_event(event_time desc)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into setting (name, value) values('throttle.auth.lockout', '300')");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into setting (name, value) values('throttle.auth.window', '60')");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into setting (name, value) values('throttle.auth.attempts', '3')");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into setting (name, value) values('throttle.ip.lockout', '60')");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into setting (name, value) values('throttle.ip.window', '20')");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into setting (name, value) values('throttle.ip.attempts', '10')");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into base_group (uuid, name, type) values('" + ..toString() + "','All users', 0)");
catch(SQLException e) {
finally {
				s.close();
			}
			try {
				s = c.prepareStatement("insert into base_group (uuid, name, type) values('" + ..toString() + "','Authenticated users', 0)");
catch(SQLException e) {
finally {
				s.close();
			}
			c.commit();
catch(SQLException e) {
			throw new IOException(e);
finally {
			if(c != null) {
				try { c.rollback(); } catch (SQLException e) { }
				try { c.close(); } catch (SQLException e) { }
			}
		}
	}
		return "{" +
				"}";
	}
		throw new IllegalArgumentException("Setup may not be instantiated with parameter map");
	}
New to GrepCode? Check out our FAQ X