NAME

Articulate::Construction - create appropriate content item objects given location, meta, content.

CONFIGURATION

components:
  construction:
    Articulate::Construction:
      constructors:
      - Articulate::Construction::LocationBased

ATTRIBUTE

constructors

A list of classes which can be used to construct items.

METHODS

construct

my $item = $construction->construct( {
  location => $location,
  meta     => $meta,
  content  => $content,
} );

Iterates through the constructors and asks each to construct an item with the construction data. If no constructor returns a defined vaue, then performs Articulate::Item->new( $args ).

Note that of these three pieces of data, it is not guaranteed that all will be available at the time of construction, particularly on inbound communication (as opposed to when retrieving from storage). This is largely dependant on the Service. Location should always be available. Content is often not available.