java.lang.Object
com.aoindustries.aoserv.master.TicketHandler
The
TicketHandler handles all the accesses to the ticket tables.- Author:
- AO Industries, Inc.
-
Method Summary
Modifier and TypeMethodDescriptionstatic intaddTicket(DatabaseConnection conn, InvalidateList invalidateList, Account.Name brand, Account.Name reseller, Account.Name account, String language, User.Name createdBy, int category, String type, Email fromAddress, String summary, String details, String rawEmail, String clientPriority, String adminPriority, String status, long statusTimeout, Set<Email> contactEmails, String contactPhoneNumbers, String internalNotes) Adds a ticket directly, without any security checks.static intaddTicket(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, Account.Name brand, Account.Name account, String language, int category, String type, Email fromAddress, String summary, String details, String clientPriority, Set<Email> contactEmails, String contactPhoneNumbers) Adds a ticket with security checks.static voidaddTicketAnnotation(DatabaseConnection conn, InvalidateList invalidateList, int ticket, User.Name administrator, String summary, String details) Adds an annotation without security checks.static voidaddTicketAnnotation(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String summary, String details) Adds an annotation with security checks.static booleancanAccessTicket(DatabaseConnection conn, RequestSource source, int ticket) static booleancanAccessTicketAction(DatabaseConnection conn, RequestSource source, int action) To be able to access a ticket action, must both have access to its ticket.static voidchangeTicketClientPriority(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String newClientPriority) static voidcheckAccessAction(DatabaseConnection conn, RequestSource source, String verb, int action) static voidcheckAccessTicket(DatabaseConnection conn, RequestSource source, String action, int ticket) static intGenerates a random, unused ticket ID.static Account.NamegetAccountForAction(DatabaseConnection conn, int action) static Account.NamegetAccountForTicket(DatabaseConnection conn, int ticket) static StringgetActionDetails(DatabaseConnection conn, RequestSource source, int action) static StringgetActionNewValue(DatabaseConnection conn, RequestSource source, int action) static StringgetActionOldValue(DatabaseConnection conn, RequestSource source, int action) static StringgetActionRawEmail(DatabaseConnection conn, RequestSource source, int action) static Account.NamegetBrandForTicket(DatabaseConnection conn, int ticket) static Account.NamegetResellerForAction(DatabaseConnection conn, int action) static Account.NamegetResellerForTicket(DatabaseConnection conn, int ticket) static StringgetStatusForTicket(DatabaseConnection conn, int ticket) static StringgetTicketDetails(DatabaseConnection conn, RequestSource source, int ticket) static StringgetTicketInternalNotes(DatabaseConnection conn, RequestSource source, int ticket) static StringgetTicketRawEmail(DatabaseConnection conn, RequestSource source, int ticket) static StringgetTypeForTicket(DatabaseConnection conn, int ticket) static booleangetVisibleAdminOnlyForAction(DatabaseConnection conn, int action) static booleanisTicketAdmin(DatabaseConnection conn, RequestSource source) A ticket administrator is part of a business that is also a reseller.static booleansetTicketAccount(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, Account.Name oldAccount, Account.Name newAccount) static voidsetTicketContactEmails(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, Set<Email> contactEmails) static voidsetTicketContactPhoneNumbers(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String contactPhoneNumbers) static booleansetTicketInternalNotes(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String oldInternalNotes, String newInternalNotes) static booleansetTicketStatus(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String oldStatus, String newStatus, long statusTimeout) static voidsetTicketSummary(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String summary) static booleansetTicketType(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String oldType, String newType) static voidstart()
-
Method Details
-
canAccessTicketAction
public static boolean canAccessTicketAction(DatabaseConnection conn, RequestSource source, int action) throws IOException, SQLException To be able to access a ticket action, must both have access to its ticket.- Throws:
IOExceptionSQLException
-
checkAccessAction
public static void checkAccessAction(DatabaseConnection conn, RequestSource source, String verb, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
canAccessTicket
public static boolean canAccessTicket(DatabaseConnection conn, RequestSource source, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
checkAccessTicket
public static void checkAccessTicket(DatabaseConnection conn, RequestSource source, String action, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
generateTicketId
Generates a random, unused ticket ID.- Throws:
IOExceptionSQLException
-
addTicket
public static int addTicket(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, Account.Name brand, Account.Name account, String language, int category, String type, Email fromAddress, String summary, String details, String clientPriority, Set<Email> contactEmails, String contactPhoneNumbers) throws IOException, SQLException Adds a ticket with security checks.- Throws:
IOExceptionSQLException
-
addTicket
public static int addTicket(DatabaseConnection conn, InvalidateList invalidateList, Account.Name brand, Account.Name reseller, Account.Name account, String language, User.Name createdBy, int category, String type, Email fromAddress, String summary, String details, String rawEmail, String clientPriority, String adminPriority, String status, long statusTimeout, Set<Email> contactEmails, String contactPhoneNumbers, String internalNotes) throws IOException, SQLException Adds a ticket directly, without any security checks.- Throws:
IOExceptionSQLException
-
getTicketDetails
public static String getTicketDetails(DatabaseConnection conn, RequestSource source, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getTicketRawEmail
public static String getTicketRawEmail(DatabaseConnection conn, RequestSource source, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getTicketInternalNotes
public static String getTicketInternalNotes(DatabaseConnection conn, RequestSource source, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getActionOldValue
public static String getActionOldValue(DatabaseConnection conn, RequestSource source, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getActionNewValue
public static String getActionNewValue(DatabaseConnection conn, RequestSource source, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getActionDetails
public static String getActionDetails(DatabaseConnection conn, RequestSource source, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getActionRawEmail
public static String getActionRawEmail(DatabaseConnection conn, RequestSource source, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketAccount
public static boolean setTicketAccount(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, Account.Name oldAccount, Account.Name newAccount) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketType
public static boolean setTicketType(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String oldType, String newType) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketStatus
public static boolean setTicketStatus(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String oldStatus, String newStatus, long statusTimeout) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketInternalNotes
public static boolean setTicketInternalNotes(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String oldInternalNotes, String newInternalNotes) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketContactEmails
public static void setTicketContactEmails(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, Set<Email> contactEmails) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketContactPhoneNumbers
public static void setTicketContactPhoneNumbers(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String contactPhoneNumbers) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
changeTicketClientPriority
public static void changeTicketClientPriority(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String newClientPriority) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
setTicketSummary
public static void setTicketSummary(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String summary) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
addTicketAnnotation
public static void addTicketAnnotation(DatabaseConnection conn, RequestSource source, InvalidateList invalidateList, int ticket, String summary, String details) throws IOException, SQLException Adds an annotation with security checks.- Throws:
IOExceptionSQLException
-
addTicketAnnotation
public static void addTicketAnnotation(DatabaseConnection conn, InvalidateList invalidateList, int ticket, User.Name administrator, String summary, String details) throws IOException, SQLException Adds an annotation without security checks.- Throws:
IOExceptionSQLException
-
isTicketAdmin
public static boolean isTicketAdmin(DatabaseConnection conn, RequestSource source) throws IOException, SQLException A ticket administrator is part of a business that is also a reseller.- Throws:
IOExceptionSQLException
-
getAccountForTicket
public static Account.Name getAccountForTicket(DatabaseConnection conn, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getBrandForTicket
public static Account.Name getBrandForTicket(DatabaseConnection conn, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getStatusForTicket
public static String getStatusForTicket(DatabaseConnection conn, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getTypeForTicket
public static String getTypeForTicket(DatabaseConnection conn, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getResellerForTicket
public static Account.Name getResellerForTicket(DatabaseConnection conn, int ticket) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getAccountForAction
public static Account.Name getAccountForAction(DatabaseConnection conn, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getResellerForAction
public static Account.Name getResellerForAction(DatabaseConnection conn, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
getVisibleAdminOnlyForAction
public static boolean getVisibleAdminOnlyForAction(DatabaseConnection conn, int action) throws IOException, SQLException - Throws:
IOExceptionSQLException
-
start
public static void start()
-
