ePages 6.10 - DE_EPAGES/WebService/API/WebService/ObjectService.pm

Package DE_EPAGES::WebService::API::WebService::ObjectService

provides web service access to objects

Example
use DE_EPAGES::WebService::API::Client;
my $FactoryService = DE_EPAGES::WebService::API::Client
    ->uri('urn://epages.de/WebService/FactoryService/2004/08')
    ->proxy("http://%2fUsers%2f$Login:$Password\@localhost:8080/epages/Store.soap");
my $ShopID = $FactoryService->objectByPath( '/Shops/DemoShop' )->result;
my $ObjectService = DE_EPAGES::WebService::API::Client
    ->uri('urn://epages.de/WebService/ObjectService/2004/08')
    ->proxy("http://%2fUsers%2f$Login:$Password\@localhost:8080/epages/Store.soap");
my $ProductsFolderID = $ObjectService->child( $ShopID, 'Products' )->result;
my $ProductsID = $ObjectService->child( $ProductsFolderID, '0815' )->result;

Functions

child
delete
existsChild
folder
get
getLoop
insertChild
set

child

Returns a child object by Alias.

Syntax
$ChildObjectID = $ObjectService->child( $ObjectID, $Alias )->result;
Input
$ObjectID (integer)
object id
$Alias (string)
unique child alias
Return
$ChildObjectID (integer)
child object id

delete

Deletes an object including all child objects.

Syntax
$ObjectService->delete( $ObjectID );
Input
$ObjectID (integer)
object id

existsChild

Returns true if a child object with the given Alias exists.

Syntax
$Exists = $ObjectService->existsChild( $ObjectID, $Alias )->result;
Example
if( $ObjectService->existsChild( $ObjectID, '0815' )->result ) { ... }
Input
$ObjectID (integer)
object id
$Alias (string)
unique child alias
Return
$Exists (boolean)
true if child object exists

folder

Returns a folder object by Alias.

Syntax
$FolderObjectID = $ObjectService->folder( $ObjectID, $Alias )->result;
Input
$ObjectID (integer)
object id
$Alias (string)
unique folder alias
Return
$FolderObjectID (integer)
folder object id

get

Returns attribute values of an object.

Syntax
$hValues = $ObjectService->get( $ObjectID, $aNames )->result;
$hValues = $ObjectService->get( $ObjectID, $aNames, $LanguageCode )->result;
Example
$Position = $ObjectService->get( $ObjectID, ['Position'] )->result->{'Position'};
Input
$ObjectID (integer)
object id
$aNames (ref.array.string)
list of attribute names
$LanguageCode (string)
ISO-639 language code, case sensitive
Return
$hValues (ref.hash)
attribute name => value hash

getLoop

Returns attribute values of multiple objects.

Syntax
$ahValues = $ObjectService->get( $aObjectIDs, $aNames, $LanguageCode )->result;
Input
$aObjectIDs (ref.array.integer)
list of object ids
$aNames (ref.array.string)
list of attribute names
$LanguageCode (string)
ISO-639 language code, case sensitive
Return
$ahValues (ref.array.ref.hash)
list of attribute names => value hashes

insertChild

Inserts a new child object.

Syntax
$ChildObjectID = $ObjectService->insertChild( $ObjectID,  $ClassID, $hValues )->result;
Example
$ClassID = $FactoryService->classByAlias( 'Category' )->result;
$ChildObjectID = $ObjectService->insertChild( $ObjectID, $ClassID, {
    Alias => 'Fiction',
    IsVisible => 1
} )->result;
Input
$ObjectID (integer)
object id
$ClassID (integer)
class id
$hValues (ref.hash)
(attribute alias => value) hash
Return
$ChildObjectID (integer)
child object id

set

Sets attribute values of an object.

Syntax
$ObjectService->set( $ObjectID, $hValues );
$ObjectService->set( $ObjectID, $hValues, $LanguageCode );
Example
$ObjectService->set( $ObjectID, { Position => 21 } );
Input
$ObjectID (integer)
object id
$hValues (ref.hash)
attribute name => value hash
$LanguageCode (string)
ISO-639 language code, case sensitive