#
# $Id: listener.icn,v 1.3 2006-01-17 12:42:24 rparlett Exp $
#
# This file is in the public domain.
#
# Author: Robert Parlett (parlett@dial.pipex.com)
#
# What is a listener, really?  Formerly, it was a 3-tuple that held an
# object, a method to call, and a "type" of event that could occur.
# This abstraction has been renamed Subscription.  Arguably, the object
# in the subscription is the listener.
#

package util

#
# This simply holds information about a single listener.
#
class Subscription(obj, meth, type)

   #
   # Return the object which is listening
   #
   method get_object()
      return obj
   end

   #
   # Return the method in the object which is invoked on an event.
   #
   method get_method()
      return meth
   end

   #
   # The type for which we are listening, or &null implying
   # we are listening for all types.
   #
   method get_type()
      return type
   end
end
