org.gudy.azureus2.plugins.utils
Interface Utilities


public interface Utilities


Method Summary
 java.nio.ByteBuffer allocateDirectByteBuffer(int size)
           
 PooledByteBuffer allocatePooledByteBuffer(byte[] data)
           
 PooledByteBuffer allocatePooledByteBuffer(int size)
           
 PooledByteBuffer allocatePooledByteBuffer(java.util.Map data)
           
 int compareVersions(java.lang.String v1, java.lang.String v2)
          Compares two version strings for order.
 AggregatedDispatcher createAggregatedDispatcher(long idle_dispatch_time, long max_queue_size)
          create a dispatcher that will queue runnable items until either the limit is reached or the dispatcher hasn't had an entry added for the defined idle time
 AggregatedList createAggregatedList(AggregatedListAcceptor acceptor, long idle_dispatch_time, long max_queue_size)
           
 DelayedTask createDelayedTask(java.lang.Runnable r)
          Adds a low priority task that will be scheduled at some point after existing tasks have completed.
 void createProcess(java.lang.String command_line)
          create a child process and executes the supplied command line.
 void createThread(java.lang.String name, java.lang.Runnable target)
          create and run a thread for the target.
 UTTimer createTimer(java.lang.String name)
          Creates a UTTimer instance.
 UTTimer createTimer(java.lang.String name, boolean lightweight)
          Creates a UTTimer instance.
 UTTimer createTimer(java.lang.String name, int priority)
          Creates a UTTimer instance.
 ByteArrayWrapper createWrapper(byte[] data)
           
 void freeDirectByteBuffer(java.nio.ByteBuffer buffer)
           
 java.lang.String getAzureusProgramDir()
           
 java.lang.String getAzureusUserDir()
           
 long getCurrentSystemTime()
          Get the current system time, like System.currentTimeMillis(), only the time lookup is cached for performance reasons.
 Formatters getFormatters()
           
 java.io.InputStream getImageAsStream(java.lang.String image_name)
           
 LocaleUtilities getLocaleUtilities()
           
 Monitor getMonitor()
           
 java.net.InetAddress getPublicAddress()
          Returns a public IP address of the machine or null if it can't be determined
 java.net.InetAddress getPublicAddress(boolean ipv6)
           
 ResourceDownloaderFactory getResourceDownloaderFactory()
           
 ResourceUploaderFactory getResourceUploaderFactory()
           
 RSSFeed getRSSFeed(java.io.InputStream is)
           
 RSSFeed getRSSFeed(ResourceDownloader feed_location)
           
 RSSFeed getRSSFeed(java.net.URL feed_location)
           
 SESecurityManager getSecurityManager()
           
 Semaphore getSemaphore()
           
 SimpleXMLParserDocumentFactory getSimpleXMLParserDocumentFactory()
           
 boolean isCVSVersion()
           
 boolean isFreeBSD()
           
 boolean isLinux()
           
 boolean isOSX()
           
 boolean isSolaris()
           
 boolean isUnix()
           
 boolean isWindows()
           
 java.lang.String normaliseFileName(java.lang.String f_name)
          Converts a file name so that all characters in the file name are compatible with the underlying filesystem.
 java.util.Map readResilientBEncodedFile(java.io.File parent_dir, java.lang.String file_name, boolean use_backup)
           
 void registerSearchProvider(SearchProvider provider)
           
 java.lang.String reverseDNSLookup(java.net.InetAddress address)
          attempts a reverse DNS lookup of an address, null if it fails
 void writeResilientBEncodedFile(java.io.File parent_dir, java.lang.String file_name, java.util.Map data, boolean use_backup)
           
 

Method Detail

getAzureusUserDir

java.lang.String getAzureusUserDir()

getAzureusProgramDir

java.lang.String getAzureusProgramDir()

isCVSVersion

boolean isCVSVersion()

isWindows

boolean isWindows()

isLinux

boolean isLinux()

isSolaris

boolean isSolaris()

isOSX

boolean isOSX()

isUnix

boolean isUnix()
Returns:
Whether the OS is a unix flavor (linux, bsd, aix, etc)
Since:
2.4.0.3

isFreeBSD

boolean isFreeBSD()
Returns:
Whether the OS is FreeBSD
Since:
2.4.0.3

getImageAsStream

java.io.InputStream getImageAsStream(java.lang.String image_name)

getSemaphore

Semaphore getSemaphore()

getMonitor

Monitor getMonitor()

allocateDirectByteBuffer

java.nio.ByteBuffer allocateDirectByteBuffer(int size)

freeDirectByteBuffer

void freeDirectByteBuffer(java.nio.ByteBuffer buffer)

allocatePooledByteBuffer

PooledByteBuffer allocatePooledByteBuffer(int size)

allocatePooledByteBuffer

PooledByteBuffer allocatePooledByteBuffer(byte[] data)

allocatePooledByteBuffer

PooledByteBuffer allocatePooledByteBuffer(java.util.Map data)
                                          throws java.io.IOException
Parameters:
data - must be b-encodable
Returns:
Throws:
java.io.IOException

getFormatters

Formatters getFormatters()

getLocaleUtilities

LocaleUtilities getLocaleUtilities()

createTimer

UTTimer createTimer(java.lang.String name)
Creates a UTTimer instance. It will be configured for non-lightweight tasks by default.

Parameters:
name - Name for the UTTimer object.
Returns:
A UTTimer instance.

createTimer

UTTimer createTimer(java.lang.String name,
                    boolean lightweight)
Creates a UTTimer instance.

Parameters:
name - Name for the UTTimer object.
lightweight - If true, it indicates that this timer will be used to perform small lightweight tasks. If false, it indicates that this timer will be used to perform expensive tasks. This allows Azureus to create the appropriate amount of resources to manage this timer.
Returns:
A UTTimer instance.

createTimer

UTTimer createTimer(java.lang.String name,
                    int priority)
Creates a UTTimer instance.

Parameters:
name - Name for the UTTimer object.
priority - The Thread.XXX_PRIORITY value to use.
Returns:
A UTTimer instance.

createThread

void createThread(java.lang.String name,
                  java.lang.Runnable target)
create and run a thread for the target. This will be a daemon thread so that its existence doesn't interfere with Azureus closedown

Parameters:
name -
target -

createProcess

void createProcess(java.lang.String command_line)
                   throws PluginException
create a child process and executes the supplied command line. The child process will not inherit any open handles on Windows, which does happen if Runtime is used directly. This relies on the Platform plugin, if this is not installed then this will fall back to using Runtime.exec

Parameters:
command_line -
Throws:
PluginException

getResourceDownloaderFactory

ResourceDownloaderFactory getResourceDownloaderFactory()

getResourceUploaderFactory

ResourceUploaderFactory getResourceUploaderFactory()

getSecurityManager

SESecurityManager getSecurityManager()

getSimpleXMLParserDocumentFactory

SimpleXMLParserDocumentFactory getSimpleXMLParserDocumentFactory()

getRSSFeed

RSSFeed getRSSFeed(java.io.InputStream is)
                   throws SimpleXMLParserDocumentException
Throws:
SimpleXMLParserDocumentException

getRSSFeed

RSSFeed getRSSFeed(java.net.URL feed_location)
                   throws ResourceDownloaderException,
                          SimpleXMLParserDocumentException
Throws:
ResourceDownloaderException
SimpleXMLParserDocumentException

getRSSFeed

RSSFeed getRSSFeed(ResourceDownloader feed_location)
                   throws ResourceDownloaderException,
                          SimpleXMLParserDocumentException
Throws:
ResourceDownloaderException
SimpleXMLParserDocumentException

getPublicAddress

java.net.InetAddress getPublicAddress()
Returns a public IP address of the machine or null if it can't be determined


getPublicAddress

java.net.InetAddress getPublicAddress(boolean ipv6)

reverseDNSLookup

java.lang.String reverseDNSLookup(java.net.InetAddress address)
attempts a reverse DNS lookup of an address, null if it fails

Parameters:
address -
Returns:

getCurrentSystemTime

long getCurrentSystemTime()
Get the current system time, like System.currentTimeMillis(), only the time lookup is cached for performance reasons.

Returns:
current system time

createWrapper

ByteArrayWrapper createWrapper(byte[] data)

createAggregatedDispatcher

AggregatedDispatcher createAggregatedDispatcher(long idle_dispatch_time,
                                                long max_queue_size)
create a dispatcher that will queue runnable items until either the limit is reached or the dispatcher hasn't had an entry added for the defined idle time

Parameters:
idle_dispatch_time - milliseconds
max_queue_size - 0 -> infinite
Returns:

createAggregatedList

AggregatedList createAggregatedList(AggregatedListAcceptor acceptor,
                                    long idle_dispatch_time,
                                    long max_queue_size)

readResilientBEncodedFile

java.util.Map readResilientBEncodedFile(java.io.File parent_dir,
                                        java.lang.String file_name,
                                        boolean use_backup)

writeResilientBEncodedFile

void writeResilientBEncodedFile(java.io.File parent_dir,
                                java.lang.String file_name,
                                java.util.Map data,
                                boolean use_backup)

compareVersions

int compareVersions(java.lang.String v1,
                    java.lang.String v2)
Compares two version strings for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

Example:
compareVersions("1.1.0.0", "1.1.2.0"); // - compareVersions("1.1.0.0", "1.1.0"); // 0 compareVersions("1.1.1.1", "1.1.1"); // +

Parameters:
v1 - the first version string to be compared
v2 - the second version string to be compared
Returns:
a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.
Since:
2.3.0.7

normaliseFileName

java.lang.String normaliseFileName(java.lang.String f_name)
Converts a file name so that all characters in the file name are compatible with the underlying filesystem. This includes quote characters, back and forwarded slashes, newline characters and so on.

Note - this is only intended for file names, rather than file paths.

Parameters:
f_name - File name to convert.
Returns:
Converted file name.

createDelayedTask

DelayedTask createDelayedTask(java.lang.Runnable r)
Adds a low priority task that will be scheduled at some point after existing tasks have completed. In particular a system task exists that will block subsequent ones until after UI initialisation is complete. Plugins can therefore use this to schedule initialisation actions to occur after UI init is complete.

Returns:
Since:
3.0.5.3

registerSearchProvider

void registerSearchProvider(SearchProvider provider)
                            throws SearchException
Throws:
SearchException