module Memo::SourceRegistry

Extended Modules

Defined in:

memo/source_registry.cr

Instance Method Summary

Instance Method Detail

def create(db : DB::Database, source_type : String) : Int64 #

Create a source with no external ID (memo-managed)


[View source]
def delete(db : DB::Database, source_type : String, external_id : ExternalId) : Bool #

Delete a source record


[View source]
def delete_by_id(db : DB::Database, internal_id : Int64) : Bool #

Delete source by internal ID


[View source]
def get_external(db : DB::Database, internal_id : Int64) : Tuple(String, ExternalId | Nil) | Nil #

Get external ID and source_type from internal ID


[View source]
def get_internal(db : DB::Database, source_type : String, external_id : ExternalId) : Int64 | Nil #

Get internal ID for an external source (doesn't create)


[View source]
def get_internal_any_type(db : DB::Database, external_id : ExternalId) : Int64 | Nil #

Get internal ID without source_type filter


[View source]
def list(db : DB::Database, source_type : String, limit : Int32 = 100, offset : Int32 = 0) : Array(Tuple(Int64, ExternalId | Nil)) #

List all sources for a given type


[View source]
def resolve(db : DB::Database, source_type : String, external_id : ExternalId) : Int64 #

Resolve external ID to internal ID, creating source record if needed


[View source]