ApiOpenStudio PHPDoc

ResourceImport extends ProcessorEntity

Class ResourceImport

Processor class to import a resource

Table of Contents

$id  : mixed
Processor ID.
$db  : ADOConnection|null
DB connections.
$details  : array<string|int, mixed>
{@inheritDoc}
$logger  : MonologWrapper
Logger object.
$meta  : array<string|int, mixed>
Metadata for the processor.
$request  : Request
All the request details.
$resourceMapper  : ResourceMapper
Resource mapper class.
$validator  : ResourceValidator
Resource validator class.
__construct()  : mixed
details()  : array<string|int, mixed>
Return details for processor.
process()  : DataContainer
{@inheritDoc}
val()  : mixed|DataContainer
Process a variable into a final result for the processor.
extractNewResource()  : array<string|int, mixed>
Extract the input YAML or JSON into an array.
generateParams()  : array<string|int, mixed>
Generate the params array for the sql search.
isDataContainer()  : bool
Validate if a set of data is wrapped in a DataContainer object.
validateImportPermissions()  : void
Validate user permissions to import a resource.
validateResourceExists()  : void
Validate the new resource does not already exist.
validateAllowedTypes()  : void
Validate an input for allowed variable types
validateAllowedValues()  : void
Validate an input for allowed values.

Properties

$id

Processor ID.

public mixed $id = ''

Processor ID.

$details

{@inheritDoc}

protected array<string|int, mixed> $details = ['name' => 'Resource import', 'machineName' => 'resource_import', 'description' => 'Import a resource from a file.', 'menu' => 'Admin', 'input' => ['resource' => ['description' => 'The resource file file. This can be YAML or JSON.', 'cardinality' => [1, 1], 'literalAllowed' => false, 'limitProcessors' => ['var_file'], 'limitTypes' => [], 'limitValues' => [], 'default' => null]]]

Details of the processor.

$meta

Metadata for the processor.

protected array<string|int, mixed> $meta

$request

All the request details.

protected Request $request

Request.

Methods

__construct()

public __construct(array<string|int, mixed> &$meta, Request &$request, ADOConnection|null $db, MonologWrapper|null $logger) : mixed
Parameters
$meta : array<string|int, mixed>

Metadata for the processor.

$request : Request

The full request object.

$db : ADOConnection|null

The DB connection object.

$logger : MonologWrapper|null

The logger.

Return values
mixed

details()

Return details for processor.

public details() : array<string|int, mixed>
Return values
array<string|int, mixed>

val()

Process a variable into a final result for the processor.

public val(string $key[, bool|null $rawData = false ]) : mixed|DataContainer

This method can be used to process a value in its meta to return a final result that it can use. If the object is a processor, then it will process that down to a final return value, or if the obj is a simple value, then it will return that. Anything else will return an error object.

Setting $realValue to true will force the value to be the actual value, rather than a potential dataContainer.

Parameters
$key : string

The key for the input variable in the meta.

$rawData : bool|null = false

Return the raw data or a DataContainer.

Tags
throws
ApiException

Invalid key or data.

Return values
mixed|DataContainer

extractNewResource()

Extract the input YAML or JSON into an array.

protected extractNewResource(string $string) : array<string|int, mixed>
Parameters
$string : string
Tags
throws
ApiException
Return values
array<string|int, mixed>

generateParams()

Generate the params array for the sql search.

protected generateParams(string|null $keyword, array<string|int, mixed>|null $keywordCols, string|null $orderBy, string|null $direction) : array<string|int, mixed>
Parameters
$keyword : string|null

Search keyword.

$keywordCols : array<string|int, mixed>|null

Columns to search for the keyword.

$orderBy : string|null

Order by column.

$direction : string|null

Order direction.

Return values
array<string|int, mixed>

isDataContainer()

Validate if a set of data is wrapped in a DataContainer object.

protected isDataContainer(mixed $data) : bool
Parameters
$data : mixed

DataContainer or raw data.

Return values
bool

validateImportPermissions()

Validate user permissions to import a resource.

protected validateImportPermissions(int $uid, array<string|int, mixed> $resource) : void
Parameters
$uid : int
$resource : array<string|int, mixed>
Tags
throws
ApiException
Return values
void

validateResourceExists()

Validate the new resource does not already exist.

protected validateResourceExists(array<string|int, mixed> $resource) : void
Parameters
$resource : array<string|int, mixed>
Tags
throws
ApiException
Return values
void

validateAllowedTypes()

Validate an input for allowed variable types

private validateAllowedTypes(string $type, array<string|int, mixed> $limitTypes, int $min, string $key) : void
Parameters
$type : string

Input value type.

$limitTypes : array<string|int, mixed>

List of limit on variable types.

$min : int

Minimum number of values.

$key : string

The key of the input being validated.

Tags
throws
ApiException

Invalid data type.

Return values
void

validateAllowedValues()

Validate an input for allowed values.

private validateAllowedValues(mixed $val, array<string|int, mixed> $limitValues, int $min, string $key) : void
Parameters
$val : mixed

Input value.

$limitValues : array<string|int, mixed>

List of allowed values.

$min : int

Minimum number of values.

$key : string

The key of the input being validated.

Tags
throws
ApiException

Invalid value.

Return values
void

Search results