Class: Zm::Client::SearchFolderJsnsBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/zm/client/search_folder/search_folder_jsns_builder.rb

Overview

class for account search folder jsns builder

Instance Method Summary collapse

Constructor Details

#initialize(search_folder) ⇒ SearchFolderJsnsBuilder

Returns a new instance of SearchFolderJsnsBuilder.



8
9
10
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 8

def initialize(search_folder)
  @item = search_folder
end

Instance Method Details

#to_colorObject



69
70
71
72
73
74
75
76
77
78
79
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 69

def to_color
  action = {
    op: :color,
    id: @item.id
  }

  action[:rgb] = @item.rgb if @item.rgb_changed?
  action[:color] = @item.color if @item.color_changed?

  { action: action }
end

#to_deleteObject



81
82
83
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 81

def to_delete
  { action: { op: :delete, id: @item.id } }
end

#to_jsnsObject Also known as: to_create



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 12

def to_jsns
  search = {
    name: @item.name,
    query: @item.query,
    types: @item.types,
    l: @item.l,
    color: @item.color,
    sortBy: @item.sortBy
  }.delete_if { |_, v| v.nil? }

  { search: search }
end

#to_modifyObject



27
28
29
30
31
32
33
34
35
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 27

def to_modify
  search = {
    id: @item.id,
    query: @item.query,
    types: @item.types
  }.reject { |_, v| v.nil? }

  { search: search }
end

#to_moveObject



59
60
61
62
63
64
65
66
67
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 59

def to_move
  action = {
    op: :move,
    id: @item.id,
    l: @item.l
  }

  { action: action }
end

#to_renameObject



49
50
51
52
53
54
55
56
57
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 49

def to_rename
  action = {
    op: :rename,
    id: @item.id,
    name: @item.name
  }

  { action: action }
end

#to_updateObject



37
38
39
40
41
42
43
44
45
46
47
# File 'lib/zm/client/search_folder/search_folder_jsns_builder.rb', line 37

def to_update
  action = {
    op: :update,
    id: @item.id,
    name: @item.name,
    color: @item.color,
    rgb: @item.rgb
  }.reject { |_, v| v.nil? }

  { action: action }
end