Class: LogStruct::Log::ActiveStorage::Exist

Inherits:
T::Struct
  • Object
show all
Extended by:
T::Sig
Includes:
Interfaces::CommonFields, Shared::SerializeCommon
Defined in:
lib/log_struct/log/active_storage/exist.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Shared::SerializeCommon

#as_json, #serialize, #serialize_common

Methods included from Interfaces::CommonFields

#serialize

Constructor Details

#initialize(source: Source::Storage, event: Event::Exist, timestamp:, level: Level::Info, storage:, file_id:, exist: nil) ⇒ void

Parameters:

  • source (Source::Storage) (defaults to: Source::Storage)

    Shared/common fields

  • event (Event) (defaults to: Event::Exist)
  • timestamp (Time)
  • level (Level) (defaults to: Level::Info)
  • storage (Symbol)
  • file_id (String)
  • exist (Boolean, nil) (defaults to: nil)

    Event-specific fields



# File ''

const :source, Source::Storage, default: Source::Storage
const :event, Event, default: Event::Exist
const :timestamp, Time, factory: -> { Time.now }
const :level, Level, default: Level::Info
const :storage, Symbol
const :file_id, String
const :exist, T.nilable(T::Boolean), default: nil

Instance Attribute Details

#eventEvent (readonly)

Returns the value of prop event.

Returns:



# File ''

const :event, Event, default: Event::Exist

#existBoolean? (readonly)

Event-specific fields

Returns:

  • (Boolean, nil)


# File ''

const :exist, T.nilable(T::Boolean), default: nil

#file_idString (readonly)

Returns the value of prop file_id.

Returns:

  • (String)


# File ''

const :file_id, String

#levelLevel (readonly)

Returns the value of prop level.

Returns:



# File ''

const :level, Level, default: Level::Info

#sourceSource::Storage (readonly)

Shared/common fields

Returns:



# File ''

const :source, Source::Storage, default: Source::Storage

#storageSymbol (readonly)

Returns the value of prop storage.

Returns:

  • (Symbol)


# File ''

const :storage, Symbol

#timestampTime (readonly)

Returns the value of prop timestamp.

Returns:

  • (Time)


# File ''

const :timestamp, Time, factory: -> { Time.now }

Instance Method Details

#to_hHash{LogStruct::LogField => T.untyped}

Returns:



43
44
45
46
47
48
49
# File 'lib/log_struct/log/active_storage/exist.rb', line 43

def to_h
  h = T.let({}, T::Hash[LogStruct::LogField, T.untyped])
  h[LogField::Storage] = storage
  h[LogField::FileId] = file_id
  h[LogField::Exist] = exist unless exist.nil?
  h
end