예제 #1
0
 /**
  * Test getAll()
  *
  * @return void
  */
 public function testGetAll()
 {
     $groupResource = new Group($this->getMockedClient(new Response(200, ['Content-Type' => 'application/json'], file_get_contents(__DIR__ . '/../../assets/GroupTest_getAll.json'))));
     $groups = $groupResource->getAll();
     self::assertInternalType('array', $groups);
     foreach ($groups as $group) {
         self::assertInstanceOf('Seafile\\Client\\Type\\Group', $group);
     }
 }
예제 #2
0
use Seafile\Client\Resource\Group;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Middleware;
use GuzzleHttp\MessageFormatter;
use Monolog\Logger;
use Seafile\Client\Http\Client;
$logger = new Logger('Logger');
$stack = HandlerStack::create();
$stack->push(Middleware::log($logger, new MessageFormatter("{hostname} {req_header_Authorization} - {req_header_User-Agent} - [{date_common_log}] \"{method} {host}{target} HTTP/{version}\" {code} {res_header_Content-Length} req_body: {req_body} response_body: {res_body}")));
/**
 * Example:
 * {"token": "your_token"}
 */
$tokenFile = getenv("HOME") . "/.seafile-php-sdk/api-token.json";
$cfgFile = getenv("HOME") . "/.seafile-php-sdk/cfg.json";
if (!is_readable($tokenFile)) {
    throw new Exception($tokenFile . ' is not readable or does not exist.');
}
if (!is_readable($cfgFile)) {
    throw new Exception($cfgFile . ' is not readable or does not exist.');
}
$token = json_decode(file_get_contents($tokenFile));
$cfg = json_decode(file_get_contents($cfgFile));
$client = new Client(['base_uri' => $cfg->baseUri, 'debug' => true, 'handler' => $stack, 'headers' => ['Content-Type' => 'application/json', 'Authorization' => 'Token ' . $token->token]]);
$groupResource = new Group($client);
$logger->log(Logger::INFO, "#################### Get all groups ");
$groups = $groupResource->getAll();
foreach ($groups as $group) {
    $logger->log(Logger::INFO, "#################### " . sprintf("Group name: %s", $group->name));
}
print PHP_EOL . 'Done' . PHP_EOL;