Example #1
0
 public static function getOneByQuery($query, array $params)
 {
     $ws = Widget::getManyByQuery($query, $params);
     if (count($ws) == 0) {
         throw new NoSuchWidget("Could not find widget matching query '{$query}' with following " . "parameters: " . asString($params));
     }
     return $ws[0];
 }
Example #2
0
 public static function loadFromQuery($query, $params)
 {
     $rows = DB\simpleSelect('users', $query, $params);
     if (count($rows) == 0) {
         throw new NoSuchUser("Could not find user for query '{$query}' and parameters " . asString($params));
     }
     $user = new User();
     $user->populateFromRow(current($rows));
     return $user;
 }
Example #3
0
 /** @deprecated All graphite objects should implement __toString() */
 public function forceString(&$uri)
 {
     $uri = asString($uri);
     return $uri;
 }
Example #4
0
 /**
  * This is just a temporary measure to keep an eye on registrations (make sure we're not
  * getting spammed) until we have a more robust, scalable mechanism for blocking spam
  * and keeping a general eye on things.
  */
 private function userCreatedNotification(User $user)
 {
     sendTextEmail('*****@*****.**', '*****@*****.**', 'New BitcoinChipin.com Account Created', "A new user has been created...\n\n" . asString($user));
 }
 public function getResponseTypesAsString()
 {
     return Util . asString(responseTypes);
 }
Example #6
0
})->subscribe($stdoutObserver());
println('Example 2 - Curl defer with flatMap using stock symbol FB');
Observable::just('FB')->flatMap(function ($symbol) {
    return Observable::defer(function () use($symbol) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_URL, "http://finance.yahoo.com/webservice/v1/symbols/{$symbol}/usd/quote?format=json");
        $result = curl_exec($ch);
        curl_close($ch);
        return Observable::just($result);
    });
})->map('json_decode')->flatMap(function ($result) {
    return Observable::fromArray($result->list->resources);
})->subscribe(new Observer\CallbackObserver(function ($value) {
    echo "Next value: " . asString($value->resource->fields->name) . "\n";
}));
/*
->combineLatest([$source2], function ($value1, $value2) {
    return "First: {$value1}, Second: {$value2}";
})
*/
println('Buy 10 shares of FB from Luis CHECKING account');
function findSavingsAccountObs($userId)
{
    return Observable::just($userId)->skipWhile(function ($input) {
        return empty($input);
    })->map(function ($userId) {
        return User::find($userId);
    })->flatMap(function (User $user) {
        return Observable::fromArray(Account::query('user_id', $user->getId()));
Example #7
0
<?php

function println($str)
{
    print "\n{$str}\n";
}
function asString($value)
{
    if (is_array($value)) {
        return json_encode($value);
    }
    return print_r($value, true);
}
$stdoutObserver = function ($prefix = '') {
    return new Rx\Observer\CallbackObserver(function ($value) use($prefix) {
        echo $prefix . "Next value: " . asString($value) . "\n";
    }, function ($error) use($prefix) {
        echo $prefix . "Exception: " . $error->getMessage() . "\n";
    }, function () use($prefix) {
        echo $prefix . "Complete!\n";
    });
};
Example #8
0
use Rxnet\Httpd\HttpdResponse;
use Rxnet\Subject\EndlessSubject;
use Rxnet\Thread\RxThread;
use Rxnet\Zmq\RxZmq;
use Rxnet\Zmq\SocketWrapper;
require __DIR__ . "/../vendor/autoload.php";
function asString($value)
{
    if (is_array($value)) {
        return json_encode($value);
    }
    return (string) $value;
}
$createStdoutObserver = function ($prefix = '') {
    return new Rx\Observer\CallbackObserver(function ($value) use($prefix) {
        echo $prefix . "Next value: " . asString($value) . " : " . memory_get_usage(true) . "\n";
    }, function ($error) use($prefix) {
        echo $prefix . "Exception: " . $error->getMessage() . "\n";
    }, function () use($prefix) {
        echo $prefix . "Complete!\n";
    });
};
$loop = Factory::create();
$scheduler = new EventLoopScheduler($loop);
$i = 0;
$mem = function () use(&$i) {
    echo memory_get_usage(true) . "\n";
};
$scheduler->schedulePeriodic($mem, 10 * 1000, 10 * 1000);
$scheduler->schedulePeriodic(function () use(&$i) {
    $i++;