X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXConnect.pm;h=a98c0c82f345f0c942be1a7f7c0afe52116302b9;hb=b9dffeff7239952814342dad19db3a51def6fab7;hp=0d48676f3e6eb576b5b47e3fd9464a2c090e41ee;hpb=2e16209416d1d189707935868a708b525c93097b;p=spider.git diff --git a/perl/DXConnect.pm b/perl/DXConnect.pm index 0d48676f..a98c0c82 100644 --- a/perl/DXConnect.pm +++ b/perl/DXConnect.pm @@ -1,62 +1,31 @@ # -# module to manage connection lists & data +# module to manage outgoing connections and things +# +# Copyright (c) 1998 - Dirk Koopman G1TLH +# +# $Id$ # package DXConnect; -require Exporter; -@ISA = qw(Exporter); +@ISA = qw(DXChannel); -%connects = undef; +use DXUtil; +use DXM; +use DXDebug; -# create a new connection object [$obj = Connect->new($call, $msg_conn_obj, $user_obj)] -sub new -{ - my ($pkg, $call, $conn, $user) = @_; - my $self = {}; - - die "trying to create a duplicate Connect for call $call\n" if $connects{$call}; - $self->{call} = $call; - $self->{conn} = $conn; - $self->{user} = $user; - $self->{t} = time; - $self->{state} = 0; - bless $self, $pkg; - return $connects{$call} = $self; -} +use strict; -# obtain a connection object by callsign [$obj = Connect->get($call)] -sub get +sub init { - my ($pkg, $call) = @_; - return $connect{$call}; -} -# obtain all the connection objects -sub get_all -{ - my ($pkg) = @_; - return values(%connects); } -# obtain a connection object by searching for its connection reference -sub get_by_cnum +sub process { - my ($pkg, $conn) = @_; - my $self; - - foreach $self (values(%connects)) { - return $self if ($self->{conn} == $conn); - } - return undef; -} -# get rid of a connection object [$obj->del()] -sub del -{ - my $self = shift; - delete $connects{$self->{call}}; } 1; -__END__; +__END__ +