Sha256: 209aa923352c64eb2f9199d5658a7194c84e48358d19d18a6aaf03f90a6e6053
Contents?: true
Size: 839 Bytes
Versions: 43
Compression:
Stored size: 839 Bytes
Contents
require 'rex' require 'rex/proto' module Rex ### # # The service module is used to extend classes that are passed into the # service manager start routine. It provides extra methods, such as reference # counting, that are used to track the service instances more uniformly. # ### module Service include Ref require 'rex/services/local_relay' # # Returns the hardcore, as in porno, alias for this service. This is used # by the service manager to manage singleton services. # def self.hardcore_alias(*args) return "__#{args}" end def deref rv = super # If there's only one reference, then it's the service managers. if @_references == 1 Rex::ServiceManager.stop_service(self) end rv end # # Calls stop on the service once the ref count drops. # def cleanup stop end attr_accessor :alias end end
Version data entries
43 entries across 43 versions & 1 rubygems