Overview

Namespaces

  • Charcoal
    • Loader
    • Model
      • Service
      • ServiceProvider
    • Source
      • Database
    • Validator

Classes

  • AbstractMetadata
  • AbstractModel
  • Collection
  • Model
  • ModelMetadata
  • ModelValidator

Interfaces

  • CollectionInterface
  • DescribableInterface
  • MetadataInterface
  • ModelInterface

Traits

  • DescribableTrait
  • Overview
  • Namespace
  • Class

Trait DescribableTrait

Default implementation, as trait, of the DescribableInterface.

Direct Known Users

Charcoal\Model\AbstractModel

Indirect Known Users

Charcoal\Model\Model
Namespace: Charcoal\Model
Located at Charcoal/Model/DescribableTrait.php
Methods summary
abstract public Charcoal\Model\DescribableInterface
# setData( array $data )

Describable object needs to have a setData() method

Describable object needs to have a setData() method

Parameters

$data
The object's data.

Returns

Charcoal\Model\DescribableInterface
Chainable
public Charcoal\Model\DescribableInterface
# setMetadataLoader( Charcoal\Model\Service\MetadataLoader $loader )

Parameters

$loader
The loader instance, used to load metadata.

Returns

Charcoal\Model\DescribableInterface
Chainable
protected Charcoal\Model\Service\MetadataLoader
# metadataLoader( )

Safe MetdataLoader getter. Create the loader if it does not exist.

Safe MetdataLoader getter. Create the loader if it does not exist.

Returns

Charcoal\Model\Service\MetadataLoader

Throws

Exception
If the metadata loader was not set.
public Charcoal\Model\DescribableInterface
# setMetadata( array|Charcoal\Model\MetadataInterface $metadata )

Parameters

$metadata
The object's metadata.

Returns

Charcoal\Model\DescribableInterface
Chainable

Throws

InvalidArgumentException
If the parameter is not an array or MetadataInterface.
public Charcoal\Model\MetadataInterface
# metadata( )

Returns

Charcoal\Model\MetadataInterface
public Charcoal\Model\MetadataInterface
# loadMetadata( string $metadataIdent = null )

Load a metadata file and store it as a static var.

Load a metadata file and store it as a static var.

Use a MetadataLoader object and the object's metadataIdent to load the metadata content (typically from the filesystem, as json).

Parameters

$metadataIdent
Optional ident.

Returns

Charcoal\Model\MetadataInterface
abstract protected Charcoal\Model\MetadataInterface
# createMetadata( )

Returns

Charcoal\Model\MetadataInterface
public Charcoal\Model\DescribableInterface
# setMetadataIdent( string $metadataIdent )

Parameters

$metadataIdent
The metadata ident.

Returns

Charcoal\Model\DescribableInterface
Chainable
public string
# metadataIdent( )

Get the metadata ident, or generate it from class name.

Get the metadata ident, or generate it from class name.

Returns

string
protected string
# generateMetadataIdent( )

Generate a metadata ident from class name.

Generate a metadata ident from class name.

Change \ and . to / and force lowercase

Returns

string
Properties summary
protected Charcoal\Model\Service\MetadataLoader $metadataLoader

$metadataLoader

$metadataLoader

# null
protected Charcoal\Model\MetadataInterface $metadata

$metadata

$metadata

#
protected string $metadataIdent

$metadataIdent

$metadataIdent

#
API documentation generated by ApiGen