Name

Bric::SOAP::Destination - SOAP interface to Bricolage destinations

Synopsis

use SOAP::Lite;
import SOAP::Data 'name';

# setup soap object to login with
my $soap = new SOAP::Lite
  uri      => 'http://bricolage.sourceforge.net/Bric/SOAP/Auth',
  readable => DEBUG;
$soap->proxy('http://localhost/soap',
             cookie_jar => HTTP::Cookies->new(ignore_discard => 1));
# login
$soap->login(name(username => USER),
             name(password => PASSWORD));

# set uri for Destination module
$soap->uri('http://bricolage.sourceforge.net/Bric/SOAP/Destination');

# get a list of all destination IDs
my $ids = $soap->list_ids()->result;

Description

This module provides a SOAP interface to manipulating Bricolage destinations.

Interface

Public Class Methods

list_ids

This method queries the database for matching destinations and returns a list of ids. If no destinations are found an empty list will be returned.

This method can accept the following named parameters to specify the search. Some fields support matching and are marked with an (M). The value for these fields will be interpreted as an SQL match expression and will be matched case-insensitively. Other fields must specify an exact string to match. Match fields combine to narrow the search results (via ANDs in an SQL WHERE clause).

name (M)

The destination's name.

description (M)

The destination's description.

move_method

The destination's move method, like FTP or File System.

site

The destination's site name.

output_channel

A name of an output channel associated with the destination.

can_copy

A boolean indicating whether the 'Copy Resources' checkbox is checked.

can_publish

A boolean indicating whether the 'Publishes' checkbox is checked.

can_preview

A boolean indicating whether the 'Previews' checkbox is checked.

active

A boolean; set false to return deleted destinations.

Throws:

Exception::AP

Side Effects: NONE

Notes: NONE

export

The export method retrieves a set of assets from the database, serializes them and returns them as a single XML document. See Bric::SOAP for the schema of the returned document.

Accepted paramters are:

dest_id

Specifies a single dest_id to be retrieved.

dest_ids

Specifies a list of dest_ids. The value for this option should be an array of integer "dest_id" assets.

Throws:

Exception::AP

Side Effects: NONE

Notes: NONE

create

The create method creates new objects using the data contained in an XML document of the format created by export().

Returns a list of new ids created in the order of the assets in the document.

Available options:

document (required)

The XML document containing objects to be created. The document must contain at least one asset object.

Throws:

Exception::AP

Side Effects: NONE

Notes: NONE

update

The update method updates an asset using the data in an XML document of the format created by export(). A common use of update() is to export() a selected object, make changes to one or more fields and then submit the changes with update().

Returns a list of new ids created in the order of the assets in the document.

Takes the following options:

document (required)

The XML document where the objects to be updated can be found. The document must contain at least one asset and may contain any number of related asset objects.

update_ids (required)

A list of "dest_id" integers for the assets to be updated. These must match id attributes on asset elements in the document. If you include objects in the document that are not listed in update_ids then they will be treated as in create(). For that reason an update() with an empty update_ids list is equivalent to a create().

Throws:

Exception::AP

Side Effects: NONE

Notes: NONE

delete

The delete() method deletes assets. It takes the following options:

dest_id

Specifies a single asset ID to be deleted.

dest_ids

Specifies a list of asset IDs to delete.

Throws:

Exception::AP

Side Effects: NONE

Notes: NONE

$self->module

Returns the module name, that is the first argument passed to bric_soap.

is_allowed_param
$pkg->is_allowed_param($param, $method)

Returns true if $param is an allowed parameter to the $method method.

Private Class Methods

$pkg->load_asset($args)

This method provides the meat of both create() and update(). The only difference between the two methods is that update_ids will be empty on create().

$pkg->serialize_asset( writer => $writer, dest_id => $id, args => $args)

Serializes a single destination object into a <destination> destination using the given writer and args.

Author

Scott Lanning <slanning@cpan.org>

See Also

Bric::SOAP, Bric::SOAP::Asset