Class: LogStruct::Log::CarrierWave::Upload

Inherits:
T::Struct
  • Object
show all
Extended by:
T::Sig
Includes:
Interfaces::CommonFields, Shared::SerializeCommon
Defined in:
lib/log_struct/log/carrierwave/upload.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::CarrierWave, event: Event::Upload, timestamp:, level: Level::Info, storage:, file_id:, uploader: nil, model: nil, mount_point: nil, version: nil, store_path: nil, extension: nil, filename: nil, mime_type: nil, size: nil, metadata: nil, duration_ms: nil) ⇒ void

Parameters:

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

    Shared/common fields

  • event (Event) (defaults to: Event::Upload)
  • timestamp (Time)
  • level (Level) (defaults to: Level::Info)
  • storage (Symbol)
  • file_id (String)
  • uploader (String, nil) (defaults to: nil)
  • model (String, nil) (defaults to: nil)
  • mount_point (String, nil) (defaults to: nil)
  • version (String, nil) (defaults to: nil)
  • store_path (String, nil) (defaults to: nil)
  • extension (String, nil) (defaults to: nil)
  • filename (String, nil) (defaults to: nil)

    Event-specific fields

  • mime_type (String, nil) (defaults to: nil)
  • size (Integer, nil) (defaults to: nil)
  • metadata (Hash{String => T.untyped}, nil) (defaults to: nil)
  • duration_ms (Float, nil) (defaults to: nil)


# File ''

const :source, Source::CarrierWave, default: Source::CarrierWave
const :event, Event, default: Event::Upload
const :timestamp, Time, factory: -> { Time.now }
const :level, Level, default: Level::Info
const :storage, Symbol
const :file_id, String
const :uploader, T.nilable(String), default: nil
const :model, T.nilable(String), default: nil
const :mount_point, T.nilable(String), default: nil
const :version, T.nilable(String), default: nil
const :store_path, T.nilable(String), default: nil
const :extension, T.nilable(String), default: nil
const :filename, T.nilable(String), default: nil
const :mime_type, T.nilable(String), default: nil
const :size, T.nilable(Integer), default: nil
const :metadata, T.nilable(T::Hash[String, T.untyped]), default: nil
const :duration_ms, T.nilable(Float), default: nil

Instance Attribute Details

#duration_msFloat? (readonly)

Returns the value of prop duration_ms.

Returns:

  • (Float, nil)


# File ''

const :duration_ms, T.nilable(Float), default: nil

#eventEvent (readonly)

Returns the value of prop event.

Returns:



# File ''

const :event, Event, default: Event::Upload

#extensionString? (readonly)

Returns the value of prop extension.

Returns:

  • (String, nil)


# File ''

const :extension, T.nilable(String), default: nil

#file_idString (readonly)

Returns the value of prop file_id.

Returns:

  • (String)


# File ''

const :file_id, String

#filenameString? (readonly)

Event-specific fields

Returns:

  • (String, nil)


# File ''

const :filename, T.nilable(String), default: nil

#levelLevel (readonly)

Returns the value of prop level.

Returns:



# File ''

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

#metadataHash{String => T.untyped}? (readonly)

Returns the value of prop metadata.

Returns:

  • (Hash{String => T.untyped}, nil)


# File ''

const :metadata, T.nilable(T::Hash[String, T.untyped]), default: nil

#mime_typeString? (readonly)

Returns the value of prop mime_type.

Returns:

  • (String, nil)


# File ''

const :mime_type, T.nilable(String), default: nil

#modelString? (readonly)

Returns the value of prop model.

Returns:

  • (String, nil)


# File ''

const :model, T.nilable(String), default: nil

#mount_pointString? (readonly)

Returns the value of prop mount_point.

Returns:

  • (String, nil)


# File ''

const :mount_point, T.nilable(String), default: nil

#sizeInteger? (readonly)

Returns the value of prop size.

Returns:

  • (Integer, nil)


# File ''

const :size, T.nilable(Integer), default: nil

#sourceSource::CarrierWave (readonly)

Shared/common fields

Returns:



# File ''

const :source, Source::CarrierWave, default: Source::CarrierWave

#storageSymbol (readonly)

Returns the value of prop storage.

Returns:

  • (Symbol)


# File ''

const :storage, Symbol

#store_pathString? (readonly)

Returns the value of prop store_path.

Returns:

  • (String, nil)


# File ''

const :store_path, T.nilable(String), default: nil

#timestampTime (readonly)

Returns the value of prop timestamp.

Returns:

  • (Time)


# File ''

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

#uploaderString? (readonly)

Returns the value of prop uploader.

Returns:

  • (String, nil)


# File ''

const :uploader, T.nilable(String), default: nil

#versionString? (readonly)

Returns the value of prop version.

Returns:

  • (String, nil)


# File ''

const :version, T.nilable(String), default: nil

Instance Method Details

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

Returns:



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/log_struct/log/carrierwave/upload.rb', line 53

def to_h
  h = T.let({}, T::Hash[LogStruct::LogField, T.untyped])
  h[LogField::Storage] = storage
  h[LogField::FileId] = file_id
  h[LogField::Uploader] = uploader unless uploader.nil?
  h[LogField::Model] = model unless model.nil?
  h[LogField::MountPoint] = mount_point unless mount_point.nil?
  h[LogField::Version] = version unless version.nil?
  h[LogField::StorePath] = store_path unless store_path.nil?
  h[LogField::Extension] = extension unless extension.nil?
  h[LogField::Filename] = filename unless filename.nil?
  h[LogField::MimeType] = mime_type unless mime_type.nil?
  h[LogField::Size] = size unless size.nil?
  h[LogField::Metadata] =  unless .nil?
  h[LogField::DurationMs] = duration_ms unless duration_ms.nil?
  h
end