Index by: file name | procedure name | procedure call | annotation
deleteServer_proc.tcl (annotations | original source)

####################################################################
# Stop and delete the server if it already exists.
# Required for successsive runs of the script. 
####################################################################
proc deleteServer { serverName } {

   putsLog "deleteServer Proc" 

   global AdminTask 
   global AdminConfig
   global AdminControl

   set serverId [ $AdminConfig getid /Server:$serverName/ ]

   if { [ string length $serverId ] == 0 } {

      putsLog " $serverName does not exist" 

   } else {

          # check if the server is running.  

          set serverMbean [ $AdminControl completeObjectName type=Server,name=$serverName,* ]

	  if { [ string length $serverMbean ] == 0 } {

	     putsLog "$serverName exists but is stopped" 

          } else {

             # log the server details then stop the server

             set cell        [ $AdminControl getAttribute $serverMbean cellName                ]
             set node        [ $AdminControl getAttribute $serverMbean nodeName                ]
             set pid         [ $AdminControl getAttribute $serverMbean pid                     ]
             set processType [ $AdminControl getAttribute $serverMbean processType             ]

             putsLog " $serverName is deployed on cell $cell, node $node, with pid $pid and process type $processType"

             #putsLog [ $AdminControl getAttribute $serverMbean state                   ]
             #putsLog [ $AdminControl getAttribute $serverMbean platformName            ]
             #putsLog [ $AdminControl getAttribute $serverMbean platformVersion         ]

             putsLog " The objects deployed on $serverName are:"

             foreach i [ $AdminControl getAttribute $serverMbean deployedObjects ] {

                 putsLog [ $AdminControl getAttribute $i name ]

             }

             if { [ catch { $AdminControl stopServer $serverMbean } r ] == 0 } {
                  putsLog "$serverName stopped successfully."

             } else {
                     putsLog "failed to stop $serverName"
                     putsLog $r 
                     return -code error $r
             }

             if { [ catch { $AdminControl stopServer $serverMbean } r ] == 0 } {
                  putsLog "$serverName stopped successfully."

             } else {
                     putsLog "failed to stop $serverName"
                     putsLog $r 
                     return -code error $r
             }


          }

	  if { [ catch { $AdminConfig remove $serverId } r ] == 0 } {
	       putsLog "$serverName deleted successfully."

	  } else {
	          putsLog "failed to delete $serverName"
	          putsLog $r 
	          return -code error $r
	  }
   }

}

Index by: file name | procedure name | procedure call | annotation
File generated 2007-08-07 at 13:42.