org.gudy.azureus2.pluginsimpl.remote.tracker
Class RPTracker

java.lang.Object
  extended by org.gudy.azureus2.pluginsimpl.remote.RPObject
      extended by org.gudy.azureus2.pluginsimpl.remote.tracker.RPTracker
All Implemented Interfaces:
Serializable, Tracker, TrackerWebContext

public class RPTracker
extends RPObject
implements Tracker

See Also:
Serialized Form

Field Summary
protected  Tracker delegate
           
 
Fields inherited from class org.gudy.azureus2.pluginsimpl.remote.RPObject
__delegate, _dispatcher, _object_id, next_key, object_registry, object_registry_reverse
 
Fields inherited from interface org.gudy.azureus2.plugins.tracker.Tracker
PR_HTTP, PR_HTTPS, PR_NON_BLOCKING
 
Constructor Summary
protected RPTracker(Tracker _delegate)
           
 
Method Summary
 RPReply _process(RPRequest request)
           
protected  void _setDelegate(Object _delegate)
           
 Object _setLocal()
           
 void addAuthenticationListener(TrackerAuthenticationListener l)
           
 void addListener(TrackerListener listener)
           
 void addPageGenerator(TrackerWebPageGenerator generator)
           
static RPTracker create(Tracker _delegate)
           
 TrackerWebContext createWebContext(int port, int protocol)
           
 TrackerWebContext createWebContext(String name, int port, int protocol)
          Create a new web context for the given port and protocol
 TrackerWebContext createWebContext(String name, int port, int protocol, InetAddress bind_ip)
          Creates a new context bound to the supplied ip
 TrackerWebContext createWebContext(String name, int port, int protocol, InetAddress bind_ip, Map<String,Object> properties)
           
 void destroy()
           
 InetAddress getBindIP()
           
 String getName()
           
 TrackerWebPageGenerator[] getPageGenerators()
           
 TrackerTorrent getTorrent(Torrent t)
           
 TrackerTorrent[] getTorrents()
           
 URL[] getURLs()
          returns the context URLS (can be two for the tracker as http + https)
 TrackerTorrent host(Torrent torrent, boolean persistent)
           
 TrackerTorrent host(Torrent torrent, boolean persistent, boolean passive)
           
 TrackerTorrent publish(Torrent torrent)
           
 void removeAuthenticationListener(TrackerAuthenticationListener l)
           
 void removeListener(TrackerListener listener)
           
 void removePageGenerator(TrackerWebPageGenerator generator)
           
 void setEnableKeepAlive(boolean enable)
           
 
Methods inherited from class org.gudy.azureus2.pluginsimpl.remote.RPObject
_fixupLocal, _getDelegate, _getName, _getOID, _lookupLocal, _lookupLocal, _refresh, _setRemote, getDispatcher, notSupported, notSupported
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

delegate

protected transient Tracker delegate
Constructor Detail

RPTracker

protected RPTracker(Tracker _delegate)
Method Detail

create

public static RPTracker create(Tracker _delegate)

_setDelegate

protected void _setDelegate(Object _delegate)
Overrides:
_setDelegate in class RPObject

_setLocal

public Object _setLocal()
                 throws RPException
Overrides:
_setLocal in class RPObject
Throws:
RPException

_process

public RPReply _process(RPRequest request)
Overrides:
_process in class RPObject

host

public TrackerTorrent host(Torrent torrent,
                           boolean persistent)
                    throws TrackerException
Specified by:
host in interface Tracker
Throws:
TrackerException

host

public TrackerTorrent host(Torrent torrent,
                           boolean persistent,
                           boolean passive)
                    throws TrackerException
Specified by:
host in interface Tracker
Throws:
TrackerException

publish

public TrackerTorrent publish(Torrent torrent)
                       throws TrackerException
Specified by:
publish in interface Tracker
Throws:
TrackerException

getTorrents

public TrackerTorrent[] getTorrents()
Specified by:
getTorrents in interface Tracker

getTorrent

public TrackerTorrent getTorrent(Torrent t)
Specified by:
getTorrent in interface Tracker

createWebContext

public TrackerWebContext createWebContext(int port,
                                          int protocol)
                                   throws TrackerException
Specified by:
createWebContext in interface Tracker
Throws:
TrackerException

createWebContext

public TrackerWebContext createWebContext(String name,
                                          int port,
                                          int protocol)
                                   throws TrackerException
Description copied from interface: Tracker
Create a new web context for the given port and protocol

Specified by:
createWebContext in interface Tracker
Parameters:
name - name of the context - will be used as basic realm for auth
Returns:
Throws:
TrackerException

createWebContext

public TrackerWebContext createWebContext(String name,
                                          int port,
                                          int protocol,
                                          InetAddress bind_ip)
                                   throws TrackerException
Description copied from interface: Tracker
Creates a new context bound to the supplied ip

Specified by:
createWebContext in interface Tracker
Returns:
Throws:
TrackerException

createWebContext

public TrackerWebContext createWebContext(String name,
                                          int port,
                                          int protocol,
                                          InetAddress bind_ip,
                                          Map<String,Object> properties)
                                   throws TrackerException
Specified by:
createWebContext in interface Tracker
Throws:
TrackerException

addListener

public void addListener(TrackerListener listener)
Specified by:
addListener in interface Tracker

removeListener

public void removeListener(TrackerListener listener)
Specified by:
removeListener in interface Tracker

getName

public String getName()
Specified by:
getName in interface TrackerWebContext

setEnableKeepAlive

public void setEnableKeepAlive(boolean enable)
Specified by:
setEnableKeepAlive in interface TrackerWebContext

getURLs

public URL[] getURLs()
Description copied from interface: TrackerWebContext
returns the context URLS (can be two for the tracker as http + https)

Specified by:
getURLs in interface TrackerWebContext
Returns:

getBindIP

public InetAddress getBindIP()
Specified by:
getBindIP in interface TrackerWebContext

addPageGenerator

public void addPageGenerator(TrackerWebPageGenerator generator)
Specified by:
addPageGenerator in interface TrackerWebContext

removePageGenerator

public void removePageGenerator(TrackerWebPageGenerator generator)
Specified by:
removePageGenerator in interface TrackerWebContext

getPageGenerators

public TrackerWebPageGenerator[] getPageGenerators()
Specified by:
getPageGenerators in interface TrackerWebContext

addAuthenticationListener

public void addAuthenticationListener(TrackerAuthenticationListener l)
Specified by:
addAuthenticationListener in interface TrackerWebContext

removeAuthenticationListener

public void removeAuthenticationListener(TrackerAuthenticationListener l)
Specified by:
removeAuthenticationListener in interface TrackerWebContext

destroy

public void destroy()
Specified by:
destroy in interface TrackerWebContext