Difference between revisions of "Truxton file create relation"
Jump to navigation
Jump to search
| Line 17: | Line 17: | ||
=Sample= | =Sample= | ||
<source lang="C" highlight="17"> | <source lang="C" highlight="17"> | ||
| − | void process_file(uint64_t truxton) | + | void process_file( uint64_t truxton ) |
{ | { | ||
| − | uint64_t file = truxton_file_open_md5(truxton, "9ec8fb6095c35eff2b236863b7caaf10"); | + | uint64_t file = truxton_file_open_md5( truxton, "9ec8fb6095c35eff2b236863b7caaf10" ); |
| − | uint64_t artifact_1 = truxton_file_create_artifact(file); | + | uint64_t artifact_1 = truxton_file_create_artifact( file ); |
| − | truxton_artifact_set_type(artifact_1, ENTITY_TYPE_EMAIL_ADDRESS); | + | truxton_artifact_set_type( artifact_1, ENTITY_TYPE_EMAIL_ADDRESS ); |
| − | truxton_artifact_set_value(artifact_1, "mdyson@cyberdynesystems.com" ); | + | truxton_artifact_set_value( artifact_1, "mdyson@cyberdynesystems.com" ); |
| − | truxton_artifact_save(artifact_1); | + | truxton_artifact_save( artifact_1 ); |
| − | uint64_t artifact_2 = truxton_file_create_artifact(file); | + | uint64_t artifact_2 = truxton_file_create_artifact( file ); |
| − | truxton_artifact_set_type(artifact_2, ENTITY_TYPE_PERSON); | + | truxton_artifact_set_type( artifact_2, ENTITY_TYPE_PERSON ); |
| − | truxton_artifact_set_value(artifact_2, "Miles Dyson" ); | + | truxton_artifact_set_value( artifact_2, "Miles Dyson" ); |
| − | truxton_artifact_save(artifact_2); | + | truxton_artifact_save( artifact_2 ); |
| − | uint64_t relation = truxton_file_create_relation(file); | + | uint64_t relation = truxton_file_create_relation( file ); |
char identifier[40]; | char identifier[40]; | ||
| − | truxton_artifact_get_id(artifact_1, identifier, sizeof(identifier)); | + | truxton_artifact_get_id( artifact_1, identifier, sizeof(identifier) ); |
| − | truxton_relation_set_a_id(relation, identifier); | + | truxton_relation_set_a_id( relation, identifier ); |
| − | truxton_relation_set_a_type(relation, OBJECT_TYPE_ENTITY); | + | truxton_relation_set_a_type( relation, OBJECT_TYPE_ENTITY ); |
| − | truxton_artifact_get_id(artifact_2, identifier, sizeof(identifier)); | + | truxton_artifact_get_id( artifact_2, identifier, sizeof(identifier) ); |
| − | truxton_relation_set_b_id(relation, identifier); | + | truxton_relation_set_b_id( relation, identifier ); |
| − | truxton_relation_set_b_type(relation, OBJECT_TYPE_ENTITY); | + | truxton_relation_set_b_type( relation, OBJECT_TYPE_ENTITY ); |
| − | truxton_relation_set_relation(relation, RELATION_MESSAGE_ADDRESS); | + | truxton_relation_set_relation( relation, RELATION_MESSAGE_ADDRESS ); |
| − | truxton_relation_save(relation); | + | truxton_relation_save( relation ); |
| − | truxton_relation_destroy(relation); | + | truxton_relation_destroy( relation ); |
| − | truxton_artifact_destroy(artifact_1); | + | truxton_artifact_destroy( artifact_1 ); |
| − | truxton_artifact_destroy(artifact_2); | + | truxton_artifact_destroy( artifact_2 ); |
| − | truxton_file_free(file); | + | truxton_file_free( file ); |
} | } | ||
</source> | </source> | ||
Latest revision as of 04:58, 13 February 2021
This creates a relation object sourced from this file that you can use in the Relation API.
A relation object is how you add records to the [Relation] table.
The resulting object will automatically be associated with the file it was created from and with the media the file belongs to.
Syntax
uint64_t truxton_file_create_relation( uint64_t file_handle );
Parameters
file_handle
The handle created by the truxton_file_open_id or truxton_file_open_md5 call.
Return value
A handle to relation object.
Sample
void process_file( uint64_t truxton )
{
uint64_t file = truxton_file_open_md5( truxton, "9ec8fb6095c35eff2b236863b7caaf10" );
uint64_t artifact_1 = truxton_file_create_artifact( file );
truxton_artifact_set_type( artifact_1, ENTITY_TYPE_EMAIL_ADDRESS );
truxton_artifact_set_value( artifact_1, "mdyson@cyberdynesystems.com" );
truxton_artifact_save( artifact_1 );
uint64_t artifact_2 = truxton_file_create_artifact( file );
truxton_artifact_set_type( artifact_2, ENTITY_TYPE_PERSON );
truxton_artifact_set_value( artifact_2, "Miles Dyson" );
truxton_artifact_save( artifact_2 );
uint64_t relation = truxton_file_create_relation( file );
char identifier[40];
truxton_artifact_get_id( artifact_1, identifier, sizeof(identifier) );
truxton_relation_set_a_id( relation, identifier );
truxton_relation_set_a_type( relation, OBJECT_TYPE_ENTITY );
truxton_artifact_get_id( artifact_2, identifier, sizeof(identifier) );
truxton_relation_set_b_id( relation, identifier );
truxton_relation_set_b_type( relation, OBJECT_TYPE_ENTITY );
truxton_relation_set_relation( relation, RELATION_MESSAGE_ADDRESS );
truxton_relation_save( relation );
truxton_relation_destroy( relation );
truxton_artifact_destroy( artifact_1 );
truxton_artifact_destroy( artifact_2 );
truxton_file_free( file );
}