Module: Puppet_X::Coi::Jboss::Provider::Jmsqueue

Includes:
BuildinsUtils
Defined in:
lib/puppet_x/coi/jboss/provider/jmsqueue.rb

Overview

A module for Jmsqueue

Instance Method Summary collapse

Instance Method Details

#createObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 4

def create
  if runasdomain?
    profile = "--profile=#{@resource[:profile]}"
  else
    profile = ''
  end
  entries = @resource[:entries].join '", "'
  if not entries.empty?
    entries = '["%s"]' % entries
  else
    raise "Array of entries can not be empty"
  end
  durable = ToBooleanConverter.new(@resource[:durable]).to_bool
  extcmd = "/extension=org.jboss.as.messaging"
  if not execute("#{extcmd}:read-resource()")[:result]
    bringUp "Extension - messaging", "#{extcmd}:add()"
  end
  syscmd = compilecmd "/subsystem=messaging"
  if not execute("#{syscmd}:read-resource()")[:result]
    bringUp "Subsystem - messaging", "#{syscmd}:add()"
  end
  hornetcmd = compilecmd "/subsystem=messaging/hornetq-server=default"
  if not execute("#{hornetcmd}:read-resource()")[:result]
    bringUp "Default HornetQ", "#{hornetcmd}:add()"
  end
  cmd = "jms-queue #{profile} add --queue-address=#{@resource[:name]} --entries=#{entries} --durable=#{durable.to_s}"
  bringUp "JMS Queue", cmd
end

#destroyObject



33
34
35
36
37
38
39
40
41
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 33

def destroy
  if runasdomain?
    profile = "--profile=#{@resource[:profile]}"
  else
    profile = ''
  end
  cmd = "jms-queue #{profile} remove --queue-address=#{@resource[:name]}"
  bringDown "JMS Queue", cmd
end

#durableObject



57
58
59
60
61
62
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 57

def durable
  trace 'durable'
  Puppet.debug "Durable given: #{@resource[:durable].inspect}"
  # normalization
  ToBooleanConverter.new($data['durable']).to_bool.to_s
end

#durable=(value) ⇒ Object



64
65
66
67
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 64

def durable= value
  trace 'durable= %s' % value.to_s
  setattr 'durable', ('"%s"' % ToBooleanConverter.new(value).to_bool)
end

#entriesObject



69
70
71
72
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 69

def entries
  trace 'entries'
  $data['entries']
end

#entries=(value) ⇒ Object



74
75
76
77
78
79
80
81
82
83
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 74

def entries= value
  trace 'entries= %s' % value.inspect
  entries = value.join '", "'
  if not entries.empty?
    entries = '["%s"]' % entries
  else
    raise "Array of entries can not be empty"
  end
  setattr 'entries', entries
end

#exists?Boolean

Returns:

  • (Boolean)


44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/puppet_x/coi/jboss/provider/jmsqueue.rb', line 44

def exists?
  $data = nil
  cmd = compilecmd "/subsystem=messaging/hornetq-server=default/jms-queue=#{@resource[:name]}:read-resource()"
  res = executeAndGet cmd

  if not res[:result]
    Puppet.debug "JMS Queue do not exists"
    return false
  end
  $data = res[:data]
  return true
end