- NAME
- REQUIRES
  - RT::Record::Role
  - _AddLink
  - _DeleteLink
  - ModifyLinkRight
  - CurrentUserHasRight
- PROVIDES
  - _AddLinksOnCreate
  - AddLink
  - DeleteLink

# NAME

RT::Record::Role::Links - Common methods for records which handle links

# REQUIRES

## RT::Record::Role

## _AddLink

Usually provided by "_AddLink" in RT::Record.

## _DeleteLink

Usually provided by "_DeleteLink" in RT::Record.

## ModifyLinkRight

The right name to check in AddLink and DeleteLink.

## CurrentUserHasRight

# PROVIDES

## _AddLinksOnCreate

Calls _AddLink (usually "_AddLink" in RT::Record) for all valid link types and aliases found in the hash. Refer to "%TYPEMAP" in RT::Link for details of link types. Key values may be a single URI or an arrayref of URIs.

Takes two hashrefs. The first is the argument hash provided to the consuming class's Create method. The second is optional and contains extra arguments to pass to _AddLink.

By default records a transaction on the link's destination object (if any), but not on the origin object.

Returns an array of localized error messages, if any.

## AddLink

Takes a paramhash of Type and one of Base or Target. Adds that link to this record.

Refer to "_AddLink" in RT::Record for full documentation. This method implements permissions and ticket validity checks before calling into RT::Record (usually).

## DeleteLink

Takes a paramhash of Type and one of Base or Target. Removes that link from the record.

Refer to "_DeleteLink" in RT::Record for full documentation. This method implements permission checks before calling into RT::Record (usually).

← Back to index