You are here

protected function FeedsExJmesPath::executeSourceExpression in Feeds extensible parsers 7.2

Same name and namespace in other branches
  1. 7 src/FeedsExJmesPath.inc \FeedsExJmesPath::executeSourceExpression()

Executes a single source expression.

Parameters

string $machine_name: The source machine name being executed.

string $expression: The expression to execute.

mixed $row: The row to execute on.

Return value

scalar|[]scalar Either a scalar, or a list of scalars. If null, the value will be ignored.

Overrides FeedsExBase::executeSourceExpression

1 method overrides FeedsExJmesPath::executeSourceExpression()
FeedsExJmesPathLines::executeSourceExpression in src/FeedsExJmesPathLines.inc
Executes a single source expression.

File

src/FeedsExJmesPath.inc, line 71
Contains FeedsExJmesPath.

Class

FeedsExJmesPath
Parses JSON documents with JMESPath.

Code

protected function executeSourceExpression($machine_name, $expression, $row) {
  $result = $this->jmesPath
    ->search($expression, $row);
  if (is_scalar($result)) {
    return $result;
  }

  // Return a single value if there's only one value.
  return count($result) === 1 ? reset($result) : $result;
}