Truxton relation set source id
Jump to navigation
Jump to search
This sets the origin of the relation.
Relationships don't just happen, you have to work at them.
The source of a relation is the object that contained the information from which the relationship was deduced.
This corresponds to the [SourceID] column of the the [Relation] table in the database.
Syntax
void truxton_relation_set_source_id( uint64_t relation_handle, char const * id );
Parameters
relation_handle
The relation object.
This handle comes from calling truxton_relation_create().
id
The string representation of a GUID. This value is an identifier of an object in Truxton.
Sample
void set_primary_photo( uint64_t truxton, uint64_t media, uint64_t child_file )
{
char media_id[ 65 ];
char file_id[ 65 ];
truxton_media_get_id( media, media_id, sizeof( media_id ) );
truxton_child_file_get_id( child_file, file_id, sizeof( file_id ) );
uint64_t relation = truxton_relation_create( truxton );
// Now tell Truxton that child_file (A object) is the primary photo of media (B object)
truxton_relation_set_relation( relation, RELATION_PRIMARY_PHOTO );
// Set the A object, A is a file
truxton_relation_set_a_id( relation, file_id );
truxton_relation_set_a_type( relation, OBJECT_TYPE_FILE );
// Set the B object, B is a piece of media
truxton_relation_set_b_id( relation, media_id );
truxton_relation_set_b_type( relation, OBJECT_TYPE_MEDIA );
// Set the source object, source is a piece of media
truxton_relation_set_source_id( relation, media_id );
truxton_relation_set_source_type( relation, OBJECT_TYPE_MEDIA );
// Commit the data to the database
truxton_relation_save( relation );
truxton_relation_destroy( relation );
}