123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- package InventoryTester;
- use strict;
- use XML::Serializer;
- use OpenSim::Utility;
- sub init {
- &OpenSimTest::Config::registerHandler("create_inventory", \&_create_inventory);
- &OpenSimTest::Config::registerHandler("root_folders", \&_root_folders);
- &OpenSimTest::Config::registerHandler("get_inventory", \&_get_inventory);
- &OpenSimTest::Config::registerHandler("new_item", \&_new_item);
- &OpenSimTest::Config::registerHandler("new_folder", \&_new_folder);
- }
- sub _apache_flag {
- my $url = shift;
- return $url =~ /inventory.cgi/ ? 1 : 0;
- }
- sub _new_folder {
- my $url = shift || $OpenSimTest::Config::INVENTORY_SERVER_URL;
- my $post_data =<<"POSTDATA";
- <InventoryFolderBase>
- <name>New Folder</name>
- <agentID>
- <UUID>b9cb58e8-f3c9-4af5-be47-029762baa68f</UUID>
- </agentID>
- <parentID>
- <UUID>500ea141-2967-49e2-9e18-fcdedffe68df</UUID>
- </parentID>
- <folderID>
- <UUID>aa6f9220-c945-0b23-6141-43c9ef734100</UUID>
- </folderID>
- <type>-1</type>
- <version>0</version>
- </InventoryFolderBase>
- POSTDATA
- if (&_apache_flag($url)) {
- $post_data = "POSTDATA=" . $post_data; # TODO: bad temporary solution
- }
- my $res = &OpenSim::Utility::HttpPostRequest($url . "/NewFolder/", $post_data) . "\n";
- }
- sub _new_item {
- my $url = shift || $OpenSimTest::Config::INVENTORY_SERVER_URL;
- my $post_data =<<"POSTDATA";
- <InventoryItemBase>
- <inventoryID>
- <UUID>f975d038-3bd7-4e8b-a945-f46b0c962ee3</UUID>
- </inventoryID>
- <assetID>
- <UUID>5f50f162-1cc6-4907-99be-a4c81d7f5e10</UUID>
- </assetID>
- <assetType>6</assetType>
- <invType>6</invType>
- <parentFolderID>
- <UUID>7018dc23-43a9-493f-b3f7-869a6bbad0f3</UUID>
- </parentFolderID>
- <avatarID>
- <UUID>b9cb58e8-f3c9-4af5-be47-029762baa68f</UUID>
- </avatarID>
- <creatorsID>
- <UUID>b9cb58e8-f3c9-4af5-be47-029762baa68f</UUID>
- </creatorsID>
- <inventoryName>Primitive</inventoryName>
- <inventoryDescription/>
- <inventoryNextPermissions>2147483647</inventoryNextPermissions>
- <inventoryCurrentPermissions>526053692</inventoryCurrentPermissions>
- <inventoryBasePermissions>2147483647</inventoryBasePermissions>
- <inventoryEveryOnePermissions>0</inventoryEveryOnePermissions>
- </InventoryItemBase>
- POSTDATA
- if (&_apache_flag($url)) {
- $post_data = "POSTDATA=" . $post_data;
- }
- my $res = &OpenSim::Utility::HttpPostRequest($url . "/NewItem/", $post_data) . "\n";
- }
- sub _get_inventory {
- my $url = shift || $OpenSimTest::Config::INVENTORY_SERVER_URL;
- my $uuid = shift;
- my $serializer = new XML::Serializer($uuid, "guid");
- my $post_data = $serializer->to_string(XML::Serializer::WITH_HEADER);
- if (&_apache_flag($url)) {
- $post_data = "POSTDATA=" . $post_data;
- }
- my $res = &OpenSim::Utility::HttpPostRequest($url . "/GetInventory/", $post_data) . "\n";
- return 1;
- }
- sub _create_inventory {
- my $url = shift || $OpenSimTest::Config::INVENTORY_SERVER_URL;
- my $uuid = shift;
- my $serializer = new XML::Serializer($uuid, "guid");
- my $post_data = $serializer->to_string(XML::Serializer::WITH_HEADER);
- if (&_apache_flag($url)) {
- $post_data = "POSTDATA=" . $post_data;
- }
- my $res = &OpenSim::Utility::HttpPostRequest($url . "/CreateInventory/", $post_data) . "\n";
- return 1;
- }
- sub _root_folders {
- my $url = shift || $OpenSimTest::Config::INVENTORY_SERVER_URL;
- my $uuid = shift;
- my $serializer = new XML::Serializer($uuid, "guid");
- my $post_data = $serializer->to_string(XML::Serializer::WITH_HEADER);
- if (&_apache_flag($url)) {
- $post_data = "POSTDATA=" . $post_data;
- }
- my $res = &OpenSim::Utility::HttpPostRequest($url . "/RootFolders/", $post_data) . "\n";
- return 1;
- }
- 1;
|