
tech.aroma.data.sql.SQLStatements Maven / Gradle / Ivy
/*
* Copyright 2017 RedRoma, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package tech.aroma.data.sql;
import java.io.IOException;
import java.net.URL;
import com.google.common.base.Charsets;
import com.google.common.io.Resources;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import tech.sirwellington.alchemy.annotations.access.Internal;
/**
* Contains the SQL SQLStatements that allow queries and updates.
*
* @author SirWellington
*/
@Internal
final class SQLStatements
{
private static final Logger LOG = LoggerFactory.getLogger(SQLStatements.class);
static class Deletes
{
static final String ACTIVITY_EVENT = loadSQLFile("tech/aroma/sql/deletes/delete_activity_event.sql");
static final String ACTIVITY_ALL_EVENTS = loadSQLFile("tech/aroma/sql/deletes/delete_all_activity_for_user.sql");
static final String APPLICATION = loadSQLFile("tech/aroma/sql/deletes/delete_application.sql");
static final String APPLICATION_OWNERS = loadSQLFile("tech/aroma/sql/deletes/delete_application_owners.sql");
static final String APPLICATION_NON_OWNERS = loadSQLFile("tech/aroma/sql/deletes/delete_application_owners_not_in_set.sql");
static final String CREDENTIAL = loadSQLFile("tech/aroma/sql/deletes/delete_credential.sql");
static final String INBOX_MESSAGE = loadSQLFile("tech/aroma/sql/deletes/delete_inbox_message.sql");
static final String INBOX_ALL_MESSAGES = loadSQLFile("tech/aroma/sql/deletes/delete_all_inbox_message_for_user.sql");
static final String FOLLOWING = loadSQLFile("tech/aroma/sql/deletes/delete_following.sql");
static final String MESSAGE = loadSQLFile("tech/aroma/sql/deletes/delete_message.sql");
static final String MEDIA = loadSQLFile("tech/aroma/sql/deletes/delete_media.sql");
static final String MEDIA_THUMBNAIL = loadSQLFile("tech/aroma/sql/deletes/delete_thumbnail.sql");
static final String ALL_MEDIA_THUMBNAILS = loadSQLFile("tech/aroma/sql/deletes/delete_all_thumbnails.sql");
static final String ORGANIZATION = loadSQLFile("tech/aroma/sql/deletes/delete_organization.sql");
static final String ORGANIZATION_MEMBER = loadSQLFile("tech/aroma/sql/deletes/delete_organization_member.sql");
static final String ORGANIZATION_ALL_MEMBERS = loadSQLFile("tech/aroma/sql/deletes/delete_organization_all_members.sql");
static final String REACTIONS = loadSQLFile("tech/aroma/sql/deletes/delete_reactions.sql");
static final String TOKEN = loadSQLFile("tech/aroma/sql/deletes/delete_token.sql");
static final String USER = loadSQLFile("tech/aroma/sql/deletes/delete_user.sql");
static final String USER_DEVICE = loadSQLFile("tech/aroma/sql/deletes/delete_user_device.sql");
static final String ALL_USER_DEVICES = loadSQLFile("tech/aroma/sql/deletes/delete_all_user_devices.sql");
}
static class Inserts
{
static final String ACTIVITY_EVENT = loadSQLFile("tech/aroma/sql/inserts/insert_activity.sql");
static final String APPLICATION = loadSQLFile("tech/aroma/sql/inserts/insert_application.sql");
static final String APPLICATION_OWNER = loadSQLFile("tech/aroma/sql/inserts/insert_application_owner.sql");
static final String CREDENTIAL = loadSQLFile("tech/aroma/sql/inserts/update_credential.sql");
static final String FOLLOWING = loadSQLFile("tech/aroma/sql/inserts/insert_following.sql");
static final String MEDIA = loadSQLFile("tech/aroma/sql/inserts/insert_media.sql");
static final String MEDIA_THUMBNAIL = loadSQLFile("tech/aroma/sql/inserts/insert_thumbnail.sql");
static final String INBOX_MESSAGE = loadSQLFile("tech/aroma/sql/inserts/insert_inbox_message.sql");
static final String MESSAGE = loadSQLFile("tech/aroma/sql/inserts/insert_message.sql");
static final String ORGANIZATION = loadSQLFile("tech/aroma/sql/inserts/insert_organization.sql");
static final String ORGANIZATION_MEMBER = loadSQLFile("tech/aroma/sql/inserts/insert_organization_member.sql");
static final String REACTION = loadSQLFile("tech/aroma/sql/inserts/insert_reactions.sql");
static final String TOKEN = loadSQLFile("tech/aroma/sql/inserts/insert_token.sql");
static final String USER = loadSQLFile("tech/aroma/sql/inserts/insert_user.sql");
static final String ADD_USER_DEVICE = loadSQLFile("tech/aroma/sql/inserts/add_user_device.sql");
static final String USER_DEVICES = loadSQLFile("tech/aroma/sql/inserts/insert_user_devices.sql");
}
static class Queries
{
static final String CHECK_ACTIVITY_EVENT = loadSQLFile("tech/aroma/sql/queries/check_activity_event_exists.sql");
static final String SELECT_ACTIVITY_EVENT = loadSQLFile("tech/aroma/sql/queries/select_activity_event.sql");
static final String SELECT_ALL_ACTIVITY_FOR_USER = loadSQLFile("tech/aroma/sql/queries/select_all_activity_events_for_user.sql");
static final String CHECK_APPLICATION = loadSQLFile("tech/aroma/sql/queries/check_application.sql");
static final String SELECT_APPLICATION = loadSQLFile("tech/aroma/sql/queries/select_application.sql");
static final String SELECT_RECENT_APPLICATION = loadSQLFile("tech/aroma/sql/queries/select_recent_applications.sql");
static final String SEARCH_APPLICATION_BY_NAME = loadSQLFile("tech/aroma/sql/queries/search_application_by_name.sql");
static final String SELECT_APPLICATION_BY_OWNER = loadSQLFile("tech/aroma/sql/queries/select_application_by_owner.sql");
static final String SELECT_APPLICATION_BY_ORGANIZATION = loadSQLFile("tech/aroma/sql/queries/select_application_by_organization.sql");
static final String SELECT_APPLICATION_OWNERS = loadSQLFile("tech/aroma/sql/queries/select_application_owners.sql");
static final String CHECK_CREDENTIAL = loadSQLFile("tech/aroma/sql/queries/check_credential_exists.sql");
static final String SELECT_CREDENTIAL = loadSQLFile("tech/aroma/sql/queries/select_credentials.sql");
static final String CHECK_FOLLOWING_EXISTS = loadSQLFile("tech/aroma/sql/queries/check_following_exists.sql");
static final String SELECT_APP_FOLLOWERS = loadSQLFile("tech/aroma/sql/queries/select_app_followers.sql");
static final String SELECT_APPS_FOLLOWING = loadSQLFile("tech/aroma/sql/queries/select_apps_following.sql");
static final String CHECK_INBOX_MESSAGE = loadSQLFile("tech/aroma/sql/queries/check_inbox_has_message.sql");
static final String COUNT_INBOX_MESSAGES = loadSQLFile("tech/aroma/sql/queries/count_inbox_messages.sql");
static final String SELECT_INBOX_MESSAGES_FOR_USER = loadSQLFile("tech/aroma/sql/queries/select_inbox_messages_for_user.sql");
static final String CHECK_MEDIA = loadSQLFile("tech/aroma/sql/queries/check_media.sql");
static final String CHECK_MEDIA_THUMBNAIL = loadSQLFile("tech/aroma/sql/queries/check_thumbnail.sql");
static final String SELECT_MEDIA = loadSQLFile("tech/aroma/sql/queries/select_media.sql");
static final String SELECT_MEDIA_THUMBNAIL = loadSQLFile("tech/aroma/sql/queries/select_thumbnail.sql");
static final String CHECK_MESSAGE = loadSQLFile("tech/aroma/sql/queries/check_message.sql");
static final String COUNT_MESSAGES = loadSQLFile("tech/aroma/sql/queries/count_messages.sql");
static final String SELECT_MESSAGE = loadSQLFile("tech/aroma/sql/queries/select_message.sql");
static final String SELECT_MESSAGES_BY_APPLICATION = loadSQLFile("tech/aroma/sql/queries/select_app_messages.sql");
static final String SELECT_MESSAGES_BY_HOSTNAME = loadSQLFile("tech/aroma/sql/queries/select_messages_by_hostname.sql");
static final String SELECT_MESSAGES_BY_TITLE = loadSQLFile("tech/aroma/sql/queries/select_messages_by_title.sql");
static final String CHECK_ORGANIZATION = loadSQLFile("tech/aroma/sql/queries/check_organization.sql");
static final String CHECK_ORGANIZATION_HAS_MEMBER = loadSQLFile("tech/aroma/sql/queries/check_organization_has_member.sql");
static final String SELECT_ORGANIZATION = loadSQLFile("tech/aroma/sql/queries/select_organization.sql");
static final String SELECT_ORGANIZATION_MEMBERS = loadSQLFile("tech/aroma/sql/queries/select_organization_members.sql");
static final String SEARCH_ORGANIZATION_BY_NAME = loadSQLFile("tech/aroma/sql/queries/search_organization_by_name.sql");
static final String CHECK_TOKEN = loadSQLFile("tech/aroma/sql/queries/check_token.sql");
static final String SELECT_REACTION = loadSQLFile("tech/aroma/sql/queries/select_reactions.sql");
static final String SELECT_TOKEN = loadSQLFile("tech/aroma/sql/queries/select_token.sql");
static final String SELECT_TOKENS_FOR_OWNER = loadSQLFile("tech/aroma/sql/queries/select_tokens_for_owner.sql");
static final String CHECK_USER = loadSQLFile("tech/aroma/sql/queries/check_user.sql");
static final String SELECT_USER = loadSQLFile("tech/aroma/sql/queries/select_user.sql");
static final String SELECT_USER_BY_EMAIL = loadSQLFile("tech/aroma/sql/queries/select_user_by_email.sql");
static final String SELECT_USER_BY_GITHUB = loadSQLFile("tech/aroma/sql/queries/select_user_by_github.sql");
static final String SELECT_RECENT_USERS = loadSQLFile("tech/aroma/sql/queries/select_user_recently_created.sql");
static final String SELECT_USER_DEVICES = loadSQLFile("tech/aroma/sql/queries/select_user_devices.sql");
}
private static String loadSQLFile(String path)
{
URL url = Resources.getResource(path);
try
{
return Resources.toString(url, Charsets.UTF_8);
}
catch (IOException ex)
{
LOG.error("Failed to load file: {}", path, ex);
throw new RuntimeException("Failed to load file: " + path, ex);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy