---
name: "Net::Trac::Ticket"
section: "3pm"
platform: "linux"
package: "libnet-trac-perl"
version: "0.16-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Net::Trac::Ticket"
---

# Net::Trac::Ticket(3pm)

Create, read, and update tickets on a remote Trac instance

## NAME

Net::Trac::Ticket - Create, read, and update tickets on a remote Trac instance

## SYNOPSIS

```
    my $ticket = Net::Trac::Ticket->new( connection => $trac );
    $ticket->load( 1 );

    print $ticket->summary, "\n";
```

## DESCRIPTION

This class represents a ticket on a remote Trac instance.  It provides methods for creating, reading, and updating tickets and their history as well as adding comments and getting attachments.

### timestamp\_to\_datetime $stamp

Accept's a timestamp in Trac's somewhat idiosyncratic format and returns a DateTime object

## METHODS

### new HASH

Takes a key `"connection"` with a value of a Net::Trac::Connection.  Returns an empty ticket object.

### load ID

Loads up the ticket with the specified ID.  Returns the ticket ID loaded on success and undef on failure.

### load\_from\_hashref HASHREF \[SKIP\]

You should never need to use this method yourself.  Loads a ticket from a hashref of data, optionally skipping metadata loading (values of `"valid_*"` accessors).

### create HASH

Creates and loads a new ticket with the values specified. Returns undef on failure and the new ticket ID on success.

### update HASH

Updates the current ticket with the specified values.

Returns undef on failure, and the ID of the current ticket on success.

### comment TEXT

Adds a comment to the current ticket.  Returns undef on failure, true on success.

### history

Returns a Net::Trac::TicketHistory object for this ticket.

### comments

Returns an array or arrayref (depending on context) of history entries which have comments included.  This will include history entries representing attachments if they have descriptions.

### attach PARAMHASH

Attaches the specified `"file"` with an optional `"description"`. Returns undef on failure and the new Net::Trac::TicketAttachment object on success.

### attachments

Returns an array or arrayref (depending on context) of all the Net::Trac::TicketAttachment objects for this ticket.

## ACCESSORS

### connection

### id

### summary

### type

### status

### priority

### severity

### resolution

### owner

### reporter

### cc

### description

### keywords

### component

### milestone

### version

### created

Returns a DateTime object

### last\_modified

Returns a DateTime object

### basic\_statuses

Returns a list of the basic statuses available for a ticket.  Others may be defined by the remote Trac instance, but we have no way of easily getting them.

### valid\_props

Returns a list of the valid properties of a ticket.

### add\_custom\_props

Adds custom properties to valid properties list.

### valid\_create\_props

Returns a list of the valid properties specifiable when creating a ticket.

### valid\_update\_props

Returns a list of the valid updatable properties.

### Valid property values

These accessors are loaded from the remote Trac instance with the valid values for the properties upon instantiation of a ticket object.

- valid\_milestones

  - valid\_types

  - valid\_components

  - valid\_priorities

  - valid\_resolutions - Only loaded when a ticket is loaded.

  - valid\_severities - May not be provided by the Trac instance.

  ## LICENSE

Copyright 2008-2009 Best Practical Solutions.

This package is licensed under the same terms as Perl 5.8.8.
