/* Options:
Date: 2025-04-16 06:27:23
Version: 8.23
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://api.bokamera.se

//Package: 
//GlobalNamespace: dtos
//AddPropertyAccessors: True
//SettersReturnThis: True
//AddServiceStackTypes: True
//AddResponseStatus: False
//AddDescriptionAsComments: True
//AddImplicitVersion: 
IncludeTypes: CreateError.*
//ExcludeTypes: 
//TreatTypesAsStrings: 
//DefaultImports: java.math.*,java.util.*,net.servicestack.client.*
*/

import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    @Route(Path="/errors/", Verbs="POST")
    public static class CreateError implements IReturn<ErrorQueryResponse>, ICompany
    {
        /**
        * The company id, if empty will use the company id for the user you are logged in with.
        */
        @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")
        public UUID CompanyId = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String ExceptionName = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String ExceptionMessage = null;

        /**
        * 
        */
        @ApiMember(Description="")
        public String ExceptionSource = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String InnerExceptionName = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String StackTrace = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String URL = null;

        /**
        * 
        */
        @ApiMember(Description="")
        public String LoggedInUser = null;

        /**
        * 
        */
        @ApiMember(Description="")
        public String IPAddress = null;

        /**
        * 
        */
        @ApiMember(Description="")
        public String Request = null;

        /**
        * 
        */
        @ApiMember(Description="")
        public String Session = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public CreateError setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public String getExceptionName() { return ExceptionName; }
        public CreateError setExceptionName(String value) { this.ExceptionName = value; return this; }
        public String getExceptionMessage() { return ExceptionMessage; }
        public CreateError setExceptionMessage(String value) { this.ExceptionMessage = value; return this; }
        public String getExceptionSource() { return ExceptionSource; }
        public CreateError setExceptionSource(String value) { this.ExceptionSource = value; return this; }
        public String getInnerExceptionName() { return InnerExceptionName; }
        public CreateError setInnerExceptionName(String value) { this.InnerExceptionName = value; return this; }
        public String getStackTrace() { return StackTrace; }
        public CreateError setStackTrace(String value) { this.StackTrace = value; return this; }
        public String getUrl() { return URL; }
        public CreateError setUrl(String value) { this.URL = value; return this; }
        public String getLoggedInUser() { return LoggedInUser; }
        public CreateError setLoggedInUser(String value) { this.LoggedInUser = value; return this; }
        public String getIpAddress() { return IPAddress; }
        public CreateError setIpAddress(String value) { this.IPAddress = value; return this; }
        public String getRequest() { return Request; }
        public CreateError setRequest(String value) { this.Request = value; return this; }
        public String getSession() { return Session; }
        public CreateError setSession(String value) { this.Session = value; return this; }
        private static Object responseType = ErrorQueryResponse.class;
        public Object getResponseType() { return responseType; }
    }

    public static class ErrorQueryResponse
    {
        public UUID CompanyId = null;
        public Integer Id = null;
        public String ExceptionName = null;
        public String ExceptionMessage = null;
        public String ExceptionSource = null;
        public String InnerExceptionName = null;
        public String StackTrace = null;
        public String URL = null;
        public String LoggedInUser = null;
        public Boolean Visible = null;
        public String IPAddress = null;
        public Date CreatedDate = null;
        public String Request = null;
        public String Session = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public ErrorQueryResponse setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public Integer getId() { return Id; }
        public ErrorQueryResponse setId(Integer value) { this.Id = value; return this; }
        public String getExceptionName() { return ExceptionName; }
        public ErrorQueryResponse setExceptionName(String value) { this.ExceptionName = value; return this; }
        public String getExceptionMessage() { return ExceptionMessage; }
        public ErrorQueryResponse setExceptionMessage(String value) { this.ExceptionMessage = value; return this; }
        public String getExceptionSource() { return ExceptionSource; }
        public ErrorQueryResponse setExceptionSource(String value) { this.ExceptionSource = value; return this; }
        public String getInnerExceptionName() { return InnerExceptionName; }
        public ErrorQueryResponse setInnerExceptionName(String value) { this.InnerExceptionName = value; return this; }
        public String getStackTrace() { return StackTrace; }
        public ErrorQueryResponse setStackTrace(String value) { this.StackTrace = value; return this; }
        public String getUrl() { return URL; }
        public ErrorQueryResponse setUrl(String value) { this.URL = value; return this; }
        public String getLoggedInUser() { return LoggedInUser; }
        public ErrorQueryResponse setLoggedInUser(String value) { this.LoggedInUser = value; return this; }
        public Boolean isVisible() { return Visible; }
        public ErrorQueryResponse setVisible(Boolean value) { this.Visible = value; return this; }
        public String getIpAddress() { return IPAddress; }
        public ErrorQueryResponse setIpAddress(String value) { this.IPAddress = value; return this; }
        public Date getCreatedDate() { return CreatedDate; }
        public ErrorQueryResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; }
        public String getRequest() { return Request; }
        public ErrorQueryResponse setRequest(String value) { this.Request = value; return this; }
        public String getSession() { return Session; }
        public ErrorQueryResponse setSession(String value) { this.Session = value; return this; }
    }

    public static interface ICompany
    {
        public UUID CompanyId = null;
    }

}