Fix coding style with phpcs PSR-12 standard
Signed-off-by: davidarendsen <davidarendsen@hey.com>
This commit is contained in:
parent
b77ffd7f38
commit
39ae737fa1
30 changed files with 264 additions and 205 deletions
|
|
@ -4,4 +4,6 @@ namespace Arendsen\FluxQueryBuilder\Exception;
|
|||
|
||||
use Exception;
|
||||
|
||||
class ExpressionNotImplementedException extends Exception {}
|
||||
class ExpressionNotImplementedException extends Exception
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,4 +4,6 @@ namespace Arendsen\FluxQueryBuilder\Exception;
|
|||
|
||||
use Exception;
|
||||
|
||||
class FunctionNotImplementedException extends Exception {}
|
||||
class FunctionNotImplementedException extends Exception
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,11 +4,10 @@ namespace Arendsen\FluxQueryBuilder\Exception;
|
|||
|
||||
use Exception;
|
||||
|
||||
class FunctionRequiredSettingMissingException extends Exception {
|
||||
|
||||
class FunctionRequiredSettingMissingException extends Exception
|
||||
{
|
||||
public function __construct(string $functionName, string $message)
|
||||
{
|
||||
parent::__construct('Function ' . $functionName . ' - ' . $message);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,14 +4,13 @@ namespace Arendsen\FluxQueryBuilder\Expression;
|
|||
|
||||
use Arendsen\FluxQueryBuilder\Exception\ExpressionNotImplementedException;
|
||||
|
||||
abstract class Base {
|
||||
|
||||
/**
|
||||
* @throws ExpressionNotImplementedException
|
||||
*/
|
||||
public function __toString()
|
||||
abstract class Base
|
||||
{
|
||||
/**
|
||||
* @throws ExpressionNotImplementedException
|
||||
*/
|
||||
public function __toString()
|
||||
{
|
||||
throw new ExpressionNotImplementedException('__toString', get_class($this));
|
||||
}
|
||||
|
||||
}
|
||||
throw new ExpressionNotImplementedException('__toString', get_class($this));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,18 +5,18 @@ namespace Arendsen\FluxQueryBuilder\Expression;
|
|||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
use Exception;
|
||||
|
||||
class KeyValue extends Base {
|
||||
class KeyValue extends Base
|
||||
{
|
||||
public const EQUAL_TO = '==';
|
||||
public const NOT_EQUAL_TO = '!=';
|
||||
public const GREATER_THAN = '>';
|
||||
public const GREATER_EQUAL_TO = '>=';
|
||||
public const LESS_THAN = '<';
|
||||
public const LESS_EQUAL_TO = '<=';
|
||||
public const EQUAL_TO_REGEX = '=~';
|
||||
public const NOT_EQUAL_TO_REGEX = '!~';
|
||||
|
||||
const EQUAL_TO = '==';
|
||||
const NOT_EQUAL_TO = '!=';
|
||||
const GREATER_THAN = '>';
|
||||
const GREATER_EQUAL_TO = '>=';
|
||||
const LESS_THAN = '<';
|
||||
const LESS_EQUAL_TO = '<=';
|
||||
const EQUAL_TO_REGEX = '=~';
|
||||
const NOT_EQUAL_TO_REGEX = '!~';
|
||||
|
||||
const COMPARISON_OPERATORS = [
|
||||
public const COMPARISON_OPERATORS = [
|
||||
self::EQUAL_TO,
|
||||
self::NOT_EQUAL_TO,
|
||||
self::GREATER_THAN,
|
||||
|
|
@ -200,10 +200,8 @@ class KeyValue extends Base {
|
|||
|
||||
protected function checkOperator(string $operator)
|
||||
{
|
||||
if(!in_array($operator, self::COMPARISON_OPERATORS))
|
||||
{
|
||||
if (!in_array($operator, self::COMPARISON_OPERATORS)) {
|
||||
throw new Exception('Operator "' . $operator . '" is not supported!');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,20 +4,15 @@ namespace Arendsen\FluxQueryBuilder;
|
|||
|
||||
use DateTime;
|
||||
|
||||
class Formatters {
|
||||
|
||||
class Formatters
|
||||
{
|
||||
public static function valueToString($value): string
|
||||
{
|
||||
if(is_string($value))
|
||||
{
|
||||
if (is_string($value)) {
|
||||
return '"' . $value . '"';
|
||||
}
|
||||
elseif(is_bool($value))
|
||||
{
|
||||
} elseif (is_bool($value)) {
|
||||
return $value ? 'true' : 'false';
|
||||
}
|
||||
elseif(is_array($value))
|
||||
{
|
||||
} elseif (is_array($value)) {
|
||||
return '[' . self::toFluxArrayString($value) . ']';
|
||||
}
|
||||
|
||||
|
|
@ -26,22 +21,19 @@ class Formatters {
|
|||
|
||||
public static function toFluxArrayString(array $array): string
|
||||
{
|
||||
array_walk($array, function(&$value, $key) {
|
||||
if(is_string($key))
|
||||
{
|
||||
$value = $key . ': ' . self::valueToString($value);
|
||||
}
|
||||
else
|
||||
{
|
||||
array_walk($array, function (&$value, $key) {
|
||||
if (is_string($key)) {
|
||||
$value = $key . ': ' . self::valueToString($value);
|
||||
} else {
|
||||
$value = self::valueToString($value);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
return implode(', ', $array);
|
||||
}
|
||||
|
||||
public static function dateTimeToString(DateTime $dateTime): string {
|
||||
return 'time(v: ' . $dateTime->format('Y-m-d\TH:i:s\Z') . ')';
|
||||
}
|
||||
|
||||
}
|
||||
public static function dateTimeToString(DateTime $dateTime): string
|
||||
{
|
||||
return 'time(v: ' . $dateTime->format('Y-m-d\TH:i:s\Z') . ')';
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,14 +5,13 @@ namespace Arendsen\FluxQueryBuilder\Functions;
|
|||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
use Arendsen\FluxQueryBuilder\Exception\FunctionNotImplementedException;
|
||||
|
||||
abstract class Base {
|
||||
|
||||
/**
|
||||
* @throws FunctionNotImplementedException
|
||||
*/
|
||||
public function __toString()
|
||||
abstract class Base
|
||||
{
|
||||
/**
|
||||
* @throws FunctionNotImplementedException
|
||||
*/
|
||||
public function __toString()
|
||||
{
|
||||
throw new FunctionNotImplementedException('__toString', get_class($this));
|
||||
}
|
||||
|
||||
}
|
||||
throw new FunctionNotImplementedException('__toString', get_class($this));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ namespace Arendsen\FluxQueryBuilder\Functions;
|
|||
|
||||
use Arendsen\FluxQueryBuilder\Expression\KeyValue;
|
||||
|
||||
class Filter extends Base {
|
||||
|
||||
class Filter extends Base
|
||||
{
|
||||
/**
|
||||
* @var KeyValue $keyValue
|
||||
*/
|
||||
|
|
@ -20,5 +20,4 @@ class Filter extends Base {
|
|||
{
|
||||
return '|> filter(fn: (r) => ' . $this->keyValue . ') ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ namespace Arendsen\FluxQueryBuilder\Functions;
|
|||
|
||||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
|
||||
class From extends Base {
|
||||
|
||||
class From extends Base
|
||||
{
|
||||
/**
|
||||
* @var array $settings
|
||||
*/
|
||||
|
|
@ -20,5 +20,4 @@ class From extends Base {
|
|||
{
|
||||
return 'from(' . Formatters::toFluxArrayString($this->settings) . ') ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ namespace Arendsen\FluxQueryBuilder\Functions;
|
|||
|
||||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
|
||||
class Group extends Base {
|
||||
|
||||
class Group extends Base
|
||||
{
|
||||
/**
|
||||
* @var array $columns
|
||||
*/
|
||||
|
|
@ -31,5 +31,4 @@ class Group extends Base {
|
|||
|
||||
return '|> group(' . $array . ') ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
namespace Arendsen\FluxQueryBuilder\Functions;
|
||||
|
||||
class Limit extends Base {
|
||||
|
||||
class Limit extends Base
|
||||
{
|
||||
/**
|
||||
* @var int $limit
|
||||
*/
|
||||
|
|
@ -18,5 +18,4 @@ class Limit extends Base {
|
|||
{
|
||||
return '|> limit(n:' . (string)$this->limit . ') ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
namespace Arendsen\FluxQueryBuilder\Functions;
|
||||
|
||||
class Map extends Base {
|
||||
|
||||
class Map extends Base
|
||||
{
|
||||
/**
|
||||
* @var array $query
|
||||
*/
|
||||
|
|
@ -18,5 +18,4 @@ class Map extends Base {
|
|||
{
|
||||
return '|> map(fn: (r) => ({ ' . $this->query . ' })) ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@ use Arendsen\FluxQueryBuilder\Exception\FunctionRequiredSettingMissingException;
|
|||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
use DateTime;
|
||||
|
||||
class Range extends Base {
|
||||
|
||||
class Range extends Base
|
||||
{
|
||||
/**
|
||||
* @var mixed $start
|
||||
*/
|
||||
|
|
@ -26,18 +26,15 @@ class Range extends Base {
|
|||
|
||||
public function __toString()
|
||||
{
|
||||
if(!$this->start)
|
||||
{
|
||||
if (!$this->start) {
|
||||
throw new FunctionRequiredSettingMissingException('Range', 'Start setting is required!');
|
||||
}
|
||||
|
||||
$settingsString = 'start: ' . $this->start;
|
||||
if($this->stop)
|
||||
{
|
||||
if ($this->stop) {
|
||||
$settingsString .= ', stop: ' . $this->stop;
|
||||
}
|
||||
|
||||
return '|> range(' . $settingsString . ') ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ namespace Arendsen\FluxQueryBuilder\Functions;
|
|||
|
||||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
|
||||
class Reduce extends Base {
|
||||
|
||||
class Reduce extends Base
|
||||
{
|
||||
/**
|
||||
* @var array $settings
|
||||
*/
|
||||
|
|
@ -24,17 +24,16 @@ class Reduce extends Base {
|
|||
|
||||
public function __toString()
|
||||
{
|
||||
return '|> reduce(fn: (r, accumulator) => ({' . implode(', ', $this->formatSettings($this->settings)) . '}), ' .
|
||||
return '|> reduce(fn: (r, accumulator) => ({' . implode(', ', $this->formatSettings($this->settings)) . '}), ' .
|
||||
'identity: {' . Formatters::toFluxArrayString($this->identity) . '}) ';
|
||||
}
|
||||
|
||||
protected function formatSettings(array $settings)
|
||||
{
|
||||
array_walk($settings, function(&$value, $key) {
|
||||
$value = $key . ': ' . $value;
|
||||
});
|
||||
array_walk($settings, function (&$value, $key) {
|
||||
$value = $key . ': ' . $value;
|
||||
});
|
||||
|
||||
return $settings;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ namespace Arendsen\FluxQueryBuilder\Functions;
|
|||
|
||||
use Arendsen\FluxQueryBuilder\Formatters;
|
||||
|
||||
class Sort extends Base {
|
||||
|
||||
class Sort extends Base
|
||||
{
|
||||
/**
|
||||
* @var array $columns
|
||||
*/
|
||||
|
|
@ -24,8 +24,7 @@ class Sort extends Base {
|
|||
|
||||
public function __toString()
|
||||
{
|
||||
return '|> sort(columns: [' . Formatters::toFluxArrayString($this->columns) .
|
||||
return '|> sort(columns: [' . Formatters::toFluxArrayString($this->columns) .
|
||||
'], desc: ' . Formatters::valueToString($this->desc) . ') ';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,18 +14,18 @@ use Arendsen\FluxQueryBuilder\Functions\Map;
|
|||
use Arendsen\FluxQueryBuilder\Functions\Group;
|
||||
use Arendsen\FluxQueryBuilder\Functions\Limit;
|
||||
|
||||
class QueryBuilder {
|
||||
class QueryBuilder
|
||||
{
|
||||
public const FLUX_PART_FROM = 'from';
|
||||
public const FLUX_PART_RANGE = 'range';
|
||||
public const FLUX_PART_FILTERS = 'filters';
|
||||
public const FLUX_PART_REDUCE = 'reduce';
|
||||
public const FLUX_PART_MAP = 'map';
|
||||
public const FLUX_PART_SORT = 'sort';
|
||||
public const FLUX_PART_GROUP = 'group';
|
||||
public const FLUX_PART_LIMIT = 'limit';
|
||||
|
||||
const FLUX_PART_FROM = 'from';
|
||||
const FLUX_PART_RANGE = 'range';
|
||||
const FLUX_PART_FILTERS = 'filters';
|
||||
const FLUX_PART_REDUCE = 'reduce';
|
||||
const FLUX_PART_MAP = 'map';
|
||||
const FLUX_PART_SORT = 'sort';
|
||||
const FLUX_PART_GROUP = 'group';
|
||||
const FLUX_PART_LIMIT = 'limit';
|
||||
|
||||
const PARTS = [
|
||||
public const PARTS = [
|
||||
self::FLUX_PART_FROM,
|
||||
self::FLUX_PART_RANGE,
|
||||
self::FLUX_PART_REDUCE,
|
||||
|
|
@ -36,11 +36,11 @@ class QueryBuilder {
|
|||
self::FLUX_PART_LIMIT,
|
||||
];
|
||||
|
||||
const REQUIRED_INPUT_FROM = 'from';
|
||||
const REQUIRED_INPUT_MEASUREMENT = 'measurement';
|
||||
const REQUIRED_INPUT_RANGE = 'range';
|
||||
public const REQUIRED_INPUT_FROM = 'from';
|
||||
public const REQUIRED_INPUT_MEASUREMENT = 'measurement';
|
||||
public const REQUIRED_INPUT_RANGE = 'range';
|
||||
|
||||
const REQUIRED_INPUT = [
|
||||
public const REQUIRED_INPUT = [
|
||||
self::REQUIRED_INPUT_FROM,
|
||||
self::REQUIRED_INPUT_MEASUREMENT,
|
||||
self::REQUIRED_INPUT_RANGE,
|
||||
|
|
@ -55,7 +55,7 @@ class QueryBuilder {
|
|||
* @var array $requiredData
|
||||
*/
|
||||
private $requiredData = [];
|
||||
|
||||
|
||||
public function from(array $from): QueryBuilder
|
||||
{
|
||||
$this->addRequiredData(self::REQUIRED_INPUT_FROM, $from);
|
||||
|
|
@ -174,18 +174,13 @@ class QueryBuilder {
|
|||
|
||||
$query = '';
|
||||
|
||||
foreach(self::PARTS as $part)
|
||||
{
|
||||
if(isset($this->fluxQueryParts[$part]))
|
||||
{
|
||||
if(is_array($this->fluxQueryParts[$part]))
|
||||
{
|
||||
foreach($this->fluxQueryParts[$part] as $filter) {
|
||||
foreach (self::PARTS as $part) {
|
||||
if (isset($this->fluxQueryParts[$part])) {
|
||||
if (is_array($this->fluxQueryParts[$part])) {
|
||||
foreach ($this->fluxQueryParts[$part] as $filter) {
|
||||
$query .= $filter;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
$query .= $this->fluxQueryParts[$part];
|
||||
}
|
||||
}
|
||||
|
|
@ -194,18 +189,17 @@ class QueryBuilder {
|
|||
return $query;
|
||||
}
|
||||
|
||||
protected function addRequiredData(string $key, $value) {
|
||||
protected function addRequiredData(string $key, $value)
|
||||
{
|
||||
$this->requiredData[$key] = $value;
|
||||
}
|
||||
|
||||
protected function checkRequired()
|
||||
{
|
||||
foreach(self::REQUIRED_INPUT as $input) {
|
||||
if(!isset($this->requiredData[$input]))
|
||||
{
|
||||
foreach (self::REQUIRED_INPUT as $input) {
|
||||
if (!isset($this->requiredData[$input])) {
|
||||
throw new Exception('You need to define the "' . $input . '" part of the query!');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
editor.link_modal.header
Reference in a new issue