Class: Pebblebed::UIDQuery

Inherits:
Object
  • Object
show all
Defined in:
lib/pebblebed/uid_query.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(uids) ⇒ UIDQuery

Returns a new instance of UIDQuery.



5
6
7
8
9
10
11
12
13
# File 'lib/pebblebed/uid_query.rb', line 5

def initialize(uids)
  @multiple = uids =~ /\,/
  if list?
    @uids = uids.split(',')
  else
    @klass, @path, @oid = Uid.parse(uids)
    @uids = uids
  end
end

Instance Attribute Details

#oidObject (readonly)

Returns the value of attribute oid.



4
5
6
# File 'lib/pebblebed/uid_query.rb', line 4

def oid
  @oid
end

#pathObject (readonly)

Returns the value of attribute path.



4
5
6
# File 'lib/pebblebed/uid_query.rb', line 4

def path
  @path
end

#uidsObject (readonly)

Returns the value of attribute uids.



4
5
6
# File 'lib/pebblebed/uid_query.rb', line 4

def uids
  @uids
end

Instance Method Details

#list?Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/pebblebed/uid_query.rb', line 15

def list?
  !!@multiple
end

#one?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/pebblebed/uid_query.rb', line 19

def one?
  !(list? || wildcard?)
end

#wildcard?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/pebblebed/uid_query.rb', line 23

def wildcard?
  Uid.valid_wildcard_path?(path) || wildcard_oid?
end

#wildcard_oid?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/pebblebed/uid_query.rb', line 27

def wildcard_oid?
  !list? && (oid == '*' || oid.nil?)
end