Heratio Framework API Reference

AccessionWriteServiceInterface
in

Contract for accession write operations.

Covers: creating accessions, updating accessions, creating related information objects from accessions, linking donors, and managing accession relations.

The PropelAdapter wraps QubitAccession, QubitRelation, QubitEvent for Symfony mode. Falls back to Laravel DB for standalone mode.

Table of Contents

Methods

createAccession()  : object
Create a new accession record.
createEvent()  : object
Create an event linked to an information object.
createRelatedInformationObject()  : object
Create an information object from accession data and link it.
createRelation()  : object
Create a relation between two objects.
linkDonor()  : void
Link a donor to an accession.
newAccession()  : object
Create a new unsaved accession object.
newEvent()  : object
Create a new unsaved event object for use in Propel relationship collections.
newInformationObject()  : object
Create a new unsaved information object for use in Propel relationship collections.
newRelation()  : object
Create a new unsaved relation object for use in Propel relationship collections.
updateAccession()  : void
Update accession attributes.

Methods

createAccession()

Create a new accession record.

public createAccession(array<string|int, mixed> $attributes[, string $culture = 'en' ]) : object
Parameters
$attributes : array<string|int, mixed>

Accession attributes (identifier, title, etc.)

$culture : string = 'en'

Culture code

Return values
object

The created accession (QubitAccession or stdClass with ->id)

createEvent()

Create an event linked to an information object.

public createEvent(int $objectId, array<string|int, mixed> $attributes[, string $culture = 'en' ]) : object
Parameters
$objectId : int

Information object ID

$attributes : array<string|int, mixed>

Event attributes (actor_id, type_id, date, etc.)

$culture : string = 'en'

Culture code

Return values
object

The created event (QubitEvent or stdClass with ->id)

createRelatedInformationObject()

Create an information object from accession data and link it.

public createRelatedInformationObject(object $accession) : object

Copies title, scope, archival history, physical characteristics, rights, creators, and dates from the accession to a new IO.

Parameters
$accession : object

The source accession (QubitAccession or stdClass)

Return values
object

The created information object (QubitInformationObject or stdClass with ->id)

createRelation()

Create a relation between two objects.

public createRelation(int $subjectId, int $objectId, int $typeId[, bool $indexOnSave = true ]) : object
Parameters
$subjectId : int

Subject object ID

$objectId : int

Object ID (related to)

$typeId : int

Relation type term ID

$indexOnSave : bool = true

Whether to index on save (default true)

Return values
object

The created relation (QubitRelation or stdClass with ->id)

linkDonor()

Link a donor to an accession.

public linkDonor(int $accessionId, int $donorId) : void
Parameters
$accessionId : int

Accession ID

$donorId : int

Donor (actor) ID

newAccession()

Create a new unsaved accession object.

public newAccession() : object

Returns a QubitAccession (Propel) or stdClass for form binding.

Return values
object

Unsaved QubitAccession or stdClass

newEvent()

Create a new unsaved event object for use in Propel relationship collections.

public newEvent() : object

Returns a QubitEvent (Propel) or stdClass suitable for deferred save.

Return values
object

Unsaved QubitEvent or stdClass

newInformationObject()

Create a new unsaved information object for use in Propel relationship collections.

public newInformationObject() : object

Returns a QubitInformationObject (Propel) or stdClass suitable for deferred save.

Return values
object

Unsaved QubitInformationObject or stdClass

newRelation()

Create a new unsaved relation object for use in Propel relationship collections.

public newRelation() : object

Returns a QubitRelation (Propel) or stdClass suitable for deferred save.

Return values
object

Unsaved QubitRelation or stdClass

updateAccession()

Update accession attributes.

public updateAccession(int $id, array<string|int, mixed> $attributes[, string $culture = 'en' ]) : void
Parameters
$id : int

Accession ID

$attributes : array<string|int, mixed>

Column => value pairs to update

$culture : string = 'en'

Culture code for i18n attributes


        
On this page

Search results