RT::Client::REST::Exception(3)

NAME
RT::Client::REST::Exception - Exceptions thrown by RT::Client::REST

VERSION
version 0.60

DESCRIPTION
These are exceptions that are thrown by various RT::Client::REST methods.

EXCEPTION HIERARCHY

RT::Client::REST::Exception
    This exception is virtual -- it is never thrown. It is used to group all the exceptions in this category.

    RT::Client::REST::OddNumberOfArgumentsException
        This means that the method you called wants key-value pairs.

    RT::Client::REST::InvaildObjectTypeException
        Thrown when you specify an invalid type to show(), edit(), or search() methods.

    RT::Client::REST::RequiredAttributeUnsetException
        An operation failed because a required attribute was not set in the object.

    RT::Client::REST::MalformedRTResponseException
        RT server sent response that we cannot parse. This may very well mean a bug in this client, so if you get this exception, some debug information mailed to the author would be appreciated.

    RT::Client::REST::InvalidParameterValueException
        Invalid value for comments, link types, object IDs, etc.

    RT::Client::REST::CannotReadAttachmentException
        Cannot read attachment (thrown from methods "comment()" and "correspond").

    RT::Client::REST::RTException
        This is a virtual exception and is never thrown. It is used to group exceptions thrown because RT server returns an error.

        RT::Client::REST::ObjectNotFoundException
            One or more of the specified objects was not found.

        RT::Client::REST::AuthenticationFailureException
            Incorrect username or password.

        RT::Client::REST::UpdateException
            This is a virtual exception. It is used to group exceptions thrown when RT server returns an error trying to update an object.

            RT::Client::REST::CouldNotSetAttributeException
                For one or another reason, attribute could not be updated with the new value.

            RT::Client::REST::InvalidEmailAddressException
                Invalid e-mail address specified.

            RT::Client::REST::AlreadyCurrentValueException
                The attribute you are trying to update already has this value. I do not know why RT insists on treating this as an exception, but since it does so, so should the client. You can probably safely catch and throw away this exception in your code.

            RT::Client::REST::ImmutableFieldException
                Trying to update an immutable field (such as "last_updated", for example).

            RT::Client::REST::IllegalValueException
                Illegal value for attribute was specified.

        RT::Client::REST::UnknownCustomFieldException
            Unknown custom field was specified in the request.

        RT::Client::REST::InvalidQueryException
            Server could not parse the search query.

        RT::Client::REST::UnauthorizedActionException
            You are not authorized to perform this action.

        RT::Client::REST::AlreadyTicketOwnerException
            The owner you are trying to assign to a ticket is already the owner. This exception is usually thrown by methods take(), "untake", and "steal", if the operation is a noop.

        RT::Client::REST::RequestTimedOutException
            Request timed out.

        RT::Client::REST::UnknownRTException
            Some other RT exception that the driver cannot recognize.

METHODS

_get_exception_class
    Figure out exception class based on content returned by RT.

_rt_content_to_exception
    Translate error string returned by RT server into an exception object ready to be thrown.

SEE ALSO
Exception::Class, RT::Client::REST.

AUTHOR
Dmitri Tikhonov

COPYRIGHT AND LICENSE
This software is copyright (c) 2020, 2018 by Dmitri Tikhonov.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.