Class: Nexpose::Criterion

Inherits:
Object
  • Object
show all
Defined in:
lib/nexpose/filter.rb

Overview

Individual search criterion.

Direct Known Subclasses

Tag::Criterion

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(field, operator, value = '') ⇒ Criterion

Returns a new instance of Criterion.



267
268
269
270
271
272
273
274
# File 'lib/nexpose/filter.rb', line 267

def initialize(field, operator, value = '')
  @field, @operator = field.upcase, operator.upcase
  if value.kind_of? Array
    @value = value.map { |v| v.to_s }
  else
    @value = value.to_s
  end
end

Instance Attribute Details

#fieldObject

Search field. One of Nexpose::Search::Field



261
262
263
# File 'lib/nexpose/filter.rb', line 261

def field
  @field
end

#operatorObject

Search operator. One of Nexpose::Search::Operator



263
264
265
# File 'lib/nexpose/filter.rb', line 263

def operator
  @operator
end

#valueObject

Search value. A search string or one of Nexpose::Search::Value



265
266
267
# File 'lib/nexpose/filter.rb', line 265

def value
  @value
end

Class Method Details

.parse(json) ⇒ Object



284
285
286
287
288
# File 'lib/nexpose/filter.rb', line 284

def self.parse(json)
  Criterion.new(json['metadata']['fieldName'],
                json['operator'],
                json['values'])
end

Instance Method Details

#to_mapObject

Convert this object into the map format expected by Nexpose.



278
279
280
281
282
# File 'lib/nexpose/filter.rb', line 278

def to_map
  { 'metadata' => { 'fieldName' => field },
    'operator' => operator,
    'values' => Array(value) }
end