Class LWSTorrent

    • Method Detail

      • notSupported

        private static void notSupported()
      • getTorrentType

        public int getTorrentType()
        Specified by:
        getTorrentType in interface TOTorrent
        Returns:
        One of the TT_ constants
      • isExportable

        public boolean isExportable()
        Description copied from interface: TOTorrent
        Is the torrent in a fit state to export and share?
        Specified by:
        isExportable in interface TOTorrent
        Returns:
      • updateExportability

        public boolean updateExportability​(TOTorrent from)
        Description copied from interface: TOTorrent
        Propagate exportability from another torrent to this one - has to have same hash. Required because an internal torrent can become exportable whilst the 'saved' (unexportable) original torrent is sitting there untouched...
        Specified by:
        updateExportability in interface TOTorrent
        Returns:
      • getDelegate

        protected TOTorrent getDelegate()
      • getName

        public byte[] getName()
        Description copied from interface: TOTorrent
        Get the name of the torrent
        Specified by:
        getName in interface TOTorrent
        Returns:
      • getUTF8Name

        public java.lang.String getUTF8Name()
        Description copied from interface: TOTorrent
        Retrieves the utf8 name of the torrent ONLY if the torrent specified one in it's info map. Otherwise, returns null (you'll have to use getName() and decode it yourself)
        Specified by:
        getUTF8Name in interface TOTorrent
      • isSimpleTorrent

        public boolean isSimpleTorrent()
        Description copied from interface: TOTorrent
        A "simple torrent" is one that consists of a single file on its own (i.e. not in a nested directory).
        Specified by:
        isSimpleTorrent in interface TOTorrent
        Returns:
      • getComment

        public byte[] getComment()
        Description copied from interface: TOTorrent
        Comment is an optional torrent property
        Specified by:
        getComment in interface TOTorrent
        Returns:
      • setComment

        public void setComment​(java.lang.String comment)
        Specified by:
        setComment in interface TOTorrent
      • getCreationDate

        public long getCreationDate()
        Description copied from interface: TOTorrent
        Gets the creation date of the torrent. Optional property, 0 returned if not set
        Specified by:
        getCreationDate in interface TOTorrent
        Returns:
      • setCreatedBy

        public void setCreatedBy​(byte[] cb)
        Specified by:
        setCreatedBy in interface TOTorrent
      • getAnnounceURL

        public java.net.URL getAnnounceURL()
        Description copied from interface: TOTorrent
        A torrent must have a URL that identifies the tracker. This method returns it. However an extension to this exists to allow multiple trackers, and their backups, to be defined. See below
        Specified by:
        getAnnounceURL in interface TOTorrent
        Returns:
      • setAnnounceURL

        public boolean setAnnounceURL​(java.net.URL url)
        Specified by:
        setAnnounceURL in interface TOTorrent
        Returns:
        true-changed; false-not changed
      • getAnnounceURLGroup

        public TOTorrentAnnounceURLGroup getAnnounceURLGroup()
        Description copied from interface: TOTorrent
        When a group of sets of trackers is defined their URLs are accessed via this method
        Specified by:
        getAnnounceURLGroup in interface TOTorrent
        Returns:
        the group, always present, which may have 0 members
      • getPieces

        public byte[][] getPieces()
                           throws TOTorrentException
        Description copied from interface: TOTorrent
        This method provides access to the SHA1/SHA256 hash values (20/32 bytes each) that correspond to the pieces of the torrent.
        Specified by:
        getPieces in interface TOTorrent
        Returns:
        Throws:
        TOTorrentException
      • setPieces

        public void setPieces​(byte[][] pieces)
                       throws TOTorrentException
        Description copied from interface: TOTorrent
        This method exists to support the temporary discarding of piece hashes to conserver memory. It should only be used with care!
        Specified by:
        setPieces in interface TOTorrent
        Throws:
        TOTorrentException
      • getPieceLength

        public long getPieceLength()
        Description copied from interface: TOTorrent
        Returns the piece length used for the torrent
        Specified by:
        getPieceLength in interface TOTorrent
        Returns:
      • getSize

        public long getSize()
        Specified by:
        getSize in interface TOTorrent
      • getFiles

        public TOTorrentFile[] getFiles()
        Description copied from interface: TOTorrent
        A torrent consists of one or more files. These are accessed via this method.
        Specified by:
        getFiles in interface TOTorrent
        Returns:
      • hasSameHashAs

        public boolean hasSameHashAs​(TOTorrent other)
        Description copied from interface: TOTorrent
        compares two torrents by hash
        Specified by:
        hasSameHashAs in interface TOTorrent
        Returns:
      • getSource

        public java.lang.String getSource()
        Specified by:
        getSource in interface TOTorrent
      • setAdditionalStringProperty

        public void setAdditionalStringProperty​(java.lang.String name,
                                                java.lang.String value)
        Description copied from interface: TOTorrent
        The additional properties are used for holding non-core data for Azureus' own user
        Specified by:
        setAdditionalStringProperty in interface TOTorrent
        Parameters:
        name - name of the property (e.g. "encoding")
        value - value. This will be encoded with default encoding
      • setAdditionalLongProperty

        public void setAdditionalLongProperty​(java.lang.String name,
                                              java.lang.Long value)
        Specified by:
        setAdditionalLongProperty in interface TOTorrent
      • setAdditionalListProperty

        public void setAdditionalListProperty​(java.lang.String name,
                                              java.util.List value)
        Specified by:
        setAdditionalListProperty in interface TOTorrent
      • setAdditionalMapProperty

        public void setAdditionalMapProperty​(java.lang.String name,
                                             java.util.Map value)
        Specified by:
        setAdditionalMapProperty in interface TOTorrent
      • getAdditionalMapProperty

        public java.util.Map getAdditionalMapProperty​(java.lang.String name)
        Specified by:
        getAdditionalMapProperty in interface TOTorrent
      • getAdditionalProperty

        public java.lang.Object getAdditionalProperty​(java.lang.String name)
        Specified by:
        getAdditionalProperty in interface TOTorrent
      • setAdditionalProperty

        public void setAdditionalProperty​(java.lang.String name,
                                          java.lang.Object value)
        Description copied from interface: TOTorrent
        set an arbitrary property. Make sure its compatible with bencoding!
        Specified by:
        setAdditionalProperty in interface TOTorrent
      • removeAdditionalProperties

        public void removeAdditionalProperties()
        Description copied from interface: TOTorrent
        remove all additional properties to clear out the torrent
        Specified by:
        removeAdditionalProperties in interface TOTorrent
      • print

        public void print()
        Description copied from interface: TOTorrent
        A diagnostic method for dumping the tracker contents to "stdout"
        Specified by:
        print in interface TOTorrent
      • getRelationText

        public java.lang.String getRelationText()
        Description copied from class: LogRelation
        A short description of what your class holds that can be printed by the logger
        Overrides:
        getRelationText in class LogRelation
        Returns:
      • getQueryableInterfaces

        public java.lang.Object[] getQueryableInterfaces()
        Description copied from class: LogRelation
        Query this class for a reference to another class that it may hold
        Overrides:
        getQueryableInterfaces in class LogRelation
        Returns:
        If found, the class desired. Otherwise, null.