createJmsQueueOrTopic.py.erb 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. wlsUser = '<%= @wlsUser %>'
  2. password = '<%= @password %>'
  3. machine = '<%= @address %>'
  4. portNumber = '<%= @port %>'
  5. jmsQuota = ""
  6. subDeploymentName = ""
  7. timeToLive = ""
  8. timeToDeliver = ""
  9. limit = ""
  10. deliveryDelay = ""
  11. useLogRedirect = "false"
  12. useRedirect = "false"
  13. errorObject = ""
  14. loggingPolicy = ""
  15. policy = ""
  16. #subDeploymentName, jmsModuleName, jmsName,jmsJNDIName,jmsType,distributed,balancingPolicy,useRedirect,limit,policy,errorObject,jmsQuota,timeToLive, ,timeToDeliver
  17. <% @params.each do |param| -%>
  18. <%= param %>
  19. <% end -%>
  20. useStoreConfig = '<%= @useStoreConfig %>'
  21. if useStoreConfig != "true":
  22. connect(wlsUser,password,'t3://'+machine+':'+portNumber)
  23. else:
  24. connect(userConfigFile='<%= @userConfigFile %>', userKeyFile='<%= @userKeyFile %>', url='t3://'+machine+':'+portNumber)
  25. print "subDeploymentName: ", subDeploymentName, " jmsModule: ", jmsModuleName, "Name: ",jmsName , "JNDIName: ",jmsJNDIName
  26. edit()
  27. startEdit()
  28. try:
  29. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName)
  30. if jmsType == "queue":
  31. if distributed == "true":
  32. cmo.createUniformDistributedQueue(jmsName)
  33. jmsWlsType = '/UniformDistributedQueues/'
  34. else:
  35. cmo.createQueue(jmsName)
  36. jmsWlsType = '/Queues/'
  37. if jmsType == "topic":
  38. if distributed == "true":
  39. cmo.createUniformDistributedTopic(jmsName)
  40. jmsWlsType = '/UniformDistributedTopics/'
  41. else:
  42. cmo.createTopic(jmsName)
  43. jmsWlsType = '/Topics/'
  44. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName)
  45. cmo.setJNDIName(jmsJNDIName)
  46. if subDeploymentName:
  47. cmo.setSubDeploymentName(subDeploymentName)
  48. print "distributed: ",distributed
  49. if distributed == "true" and jmsType == "queue":
  50. print "distributed"
  51. cmo.setLoadBalancingPolicy(balancingPolicy)
  52. print "error queue redirect: ",useRedirect
  53. if useRedirect == "true":
  54. if errorObject:
  55. print "redirect to ",errorObject
  56. else:
  57. print "redirect to self"
  58. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName+'/DeliveryFailureParams/'+jmsName)
  59. if limit:
  60. print "limit"
  61. cmo.setRedeliveryLimit( int(limit) )
  62. if policy:
  63. print "policy"
  64. cmo.setExpirationPolicy(policy)
  65. if errorObject:
  66. if distributed == "true":
  67. cmo.setErrorDestination(getMBean('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+'/UniformDistributedQueues/'+errorObject))
  68. else:
  69. cmo.setErrorDestination(getMBean('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+'/Queues/'+errorObject))
  70. print "logging redirect: ",useLogRedirect
  71. if useLogRedirect == "true":
  72. print "redirect to log "
  73. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName+'/DeliveryFailureParams/'+jmsName)
  74. if limit:
  75. print "limit"
  76. cmo.setRedeliveryLimit( int(limit) )
  77. cmo.setExpirationPolicy('Log')
  78. if loggingPolicy:
  79. cmo.setExpirationLoggingPolicy(loggingPolicy)
  80. if timeToLive:
  81. print "time To Live"
  82. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName+'/DeliveryParamsOverrides/'+jmsName)
  83. #TimeToLive is an int MBean attribute
  84. cmo.setTimeToLive( int(timeToLive))
  85. if timeToDeliver:
  86. print "time To Deliver"
  87. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName+'/DeliveryParamsOverrides/'+jmsName)
  88. #TimeToDeliver is a string MBean attribute
  89. cmo.setTimeToDeliver(timeToDeliver)
  90. if deliveryDelay:
  91. print "RedeliveryDelay"
  92. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName+'/DeliveryParamsOverrides/'+jmsName)
  93. cmo.setRedeliveryDelay( int(deliveryDelay))
  94. if jmsQuota:
  95. print "jms Quota"
  96. cd('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+jmsWlsType+jmsName)
  97. cmo.setQuota(getMBean('/JMSSystemResources/'+jmsModuleName+'/JMSResource/'+jmsModuleName+'/Quotas/'+jmsQuota ))
  98. save()
  99. activate()
  100. except:
  101. print "Unexpected error:", sys.exc_info()[0]
  102. undo('true','y')
  103. stopEdit('y')
  104. raise