Example #1
0
 /**
  * Execute the console command.
  *
  * @return void
  */
 public function fire()
 {
     $config = ArrayLoader::load(config('tradukoj'));
     $this->debugStatus = $this->option('debug');
     $output = $this->getOutput();
     $clientSocketApi = new ClientSocketApi($config, new Socket(), new PostCurl(), new ConsoleOutput(), $this->debugStatus);
     $this->info("Connecting with Tradukoj ...");
     $clientSocketApi->init();
     if ($this->option('upload-first')) {
         $catalogs = $this->manager->getCatalogs();
         foreach ($catalogs as $catalog) {
             $output->writeln(PHP_EOL . sprintf('<info>Uploading catalog %s ...</info>', $catalog));
             $data = $this->manager->getTranslations($catalog);
             $this->output->writeln('uploadKeys("' . $catalog . '", $data)');
             $clientSocketApi->uploadKeys($catalog, $data);
         }
         $this->info('Done!');
         $clientSocketApi->shutdown();
         return;
     }
     // normal synchronization (not upload-first)
     $catalogs = $clientSocketApi->getCatalogIndex();
     foreach ($catalogs as $catalog) {
         $output->writeln(PHP_EOL . sprintf('Downloading catalog "%s" ...', $catalog));
         $translations = $clientSocketApi->downloadKeys($catalog);
         var_dump($translations);
         //$data = $this->manager->getTranslations($catalog);
         //$this->output->writeln('uploadKeys("' . $catalog . '", $data)');
         //$clientSocketApi->uploadKeys($catalog, $data);
     }
     $clientSocketApi->shutdown();
     $this->info('Done!');
 }
Example #2
0
<?php

require_once __DIR__ . '/../vendor/autoload.php';
use JLaso\TradukojConnector\Model\Loader\ArrayLoader;
use JLaso\TradukojConnector\ClientSocketApi;
use JLaso\TradukojConnector\Socket\Socket;
use JLaso\TradukojConnector\PostClient\PostCurl;
use JLaso\TradukojConnector\Output\ConsoleOutput;
$loader = new ArrayLoader();
$config = $loader->load(array('project_id' => 1, 'key' => 'key', 'secret' => 'secret', 'url' => 'https://localhost/api/'));
$socketClient = new Socket();
$postClient = new PostCurl();
$consoleOutput = new ConsoleOutput();
$clientSocketApi = new ClientSocketApi($config, $socketClient, $postClient, $consoleOutput, true);
// initialize client
$clientSocketApi->init();
// getters
// fetch the list of bundles of the project
$bundles = $clientSocketApi->getBundleIndex();
// get the list of catalogs of the project
$catalogs = $clientSocketApi->getCatalogIndex();
$keys = $clientSocketApi->getKeyIndex($bundles[0]);
$messages = $clientSocketApi->getMessages($bundles[0], $keys[0]);
 /**
  * @expectedException \JLaso\TradukojConnector\Exception\CreateSocketException
  */
 public function testCreateSocketException()
 {
     $this->clientSocketApi->init();
 }