~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Open Mash Cross Reference
mash/tcl/mgamon/al-mgamon.tcl

Component: ~ [ mash ] ~ [ apps ] ~ [ gsm ] ~ [ lib ] ~ [ otcl ] ~ [ srm ] ~ [ tcl8.3 ] ~ [ tclcl ] ~ [ tk8.3 ] ~ [ tutorials ] ~

  1 # al-mgamon.tcl --
  2 #
  3 #       FIXME: This file needs a description here.
  4 #
  5 # Copyright (c) 1997-2002 The Regents of the University of California.
  6 # All rights reserved.
  7 #
  8 # Redistribution and use in source and binary forms, with or without
  9 # modification, are permitted provided that the following conditions are met:
 10 #
 11 # A. Redistributions of source code must retain the above copyright notice,
 12 #    this list of conditions and the following disclaimer.
 13 # B. Redistributions in binary form must reproduce the above copyright notice,
 14 #    this list of conditions and the following disclaimer in the documentation
 15 #    and/or other materials provided with the distribution.
 16 # C. Neither the names of the copyright holders nor the names of its
 17 #    contributors may be used to endorse or promote products derived from this
 18 #    software without specific prior written permission.
 19 #
 20 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
 21 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 22 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 23 # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
 24 # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 25 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 26 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
 27 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 28 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 29 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 30 #
 31 # @(#) $Header: /usr/mash/src/repository/mash/mash-1/tcl/mgamon/al-mgamon.tcl,v 1.19 2002/02/03 04:27:48 lim Exp $
 32 
 33 import AnnounceListenManager/AS SDPParser
 34 
 35 Class AnnounceListenManager/AS/MeGaMon -superclass AnnounceListenManager/AS
 36 
 37 AnnounceListenManager/AS/MeGaMon instproc init { agent spec bw } {
 38         $self next $spec $bw mgamon
 39         $self instvar sdp_ agent_
 40         set agent_ $agent
 41         set sdp_ [new SDPParser]
 42 }
 43 
 44 AnnounceListenManager/AS/MeGaMon instproc send_announcement {} {
 45         puts stderr "MeGa Monitor send_announcement called!"
 46         return ""
 47 }
 48 
 49 AnnounceListenManager/AS/MeGaMon instproc recv_msg { atype aspec addr srv_name srv_loc srv_inst ssg_port m } {
 50         $self instvar agent_ avgdelta_ sdp_
 51         if { $srv_name == "DEATH" } {
 52                 return
 53         }
 54 
 55         if {$atype == "client" || $atype == "srv"} {
 56                 if {$srv_name != "Mars"} {
 57                         set m [$sdp_ parse $m]
 58                         $agent_ recv_msg $atype $aspec $addr "$m" $avgdelta_($aspec)
 59                         if { $m != "" } {
 60                                 delete $m
 61                         }
 62                 } else {
 63                         $agent_ recv_msg $atype $aspec $addr $srv_name $avgdelta_($aspec)
 64                 }
 65         }
 66 
 67 }
 68 
 69 AnnounceListenManager/AS/MeGaMon instproc register { atype aspec addr srv_name srv_inst msg } {
 70         $self instvar agent_ sdp_
 71         if {$srv_name != "Mars"} {
 72                 set m [$sdp_ parse $msg]
 73                 $agent_ register $atype $aspec $addr "$m"
 74                 if { $m != "" } {
 75                         delete $m
 76                 }
 77         } else {
 78                 $agent_ register $atype $aspec $addr $srv_name
 79         }
 80 }
 81 
 82 AnnounceListenManager/AS/MeGaMon instproc unregister { atype aspec addr srv_name srv_inst msg } {
 83         $self instvar agent_ sdp_
 84         if {$srv_name != "Mars"} {
 85                 set msg [$sdp_ parse $msg]
 86                 $agent_ unregister $atype $aspec $addr "$msg"
 87                 if { $msg != "" } {
 88                         delete $msg
 89                 }
 90         } else {
 91                 $agent_ unregister $atype $aspec $addr $srv_name
 92         }
 93 }
 94 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.