Examples of BEncodedDictionary


Examples of org.eclipse.ecf.protocol.bittorrent.internal.encode.BEncodedDictionary

    }

    dictionary = Decode.bDecode(new FileInputStream(file));
    torrentData = dictionary.toString().getBytes("ISO-8859-1"); //$NON-NLS-1$
    tracker = (String) dictionary.get("announce"); //$NON-NLS-1$
    final BEncodedDictionary info = (BEncodedDictionary) dictionary.get("info"); //$NON-NLS-1$
    final List list = (List) info.get("files"); //$NON-NLS-1$
    if (list != null) {
      filenames = new String[list.size()];
      lengths = new long[filenames.length];
      total = 0;
      for (int i = 0; i < filenames.length; i++) {
        final BEncodedDictionary aDictionary = (BEncodedDictionary) list.get(i);
        lengths[i] = ((Long) aDictionary.get("length")).longValue(); //$NON-NLS-1$
        total += lengths[i];
        final List aList = (List) aDictionary.get("path"); //$NON-NLS-1$
        final StringBuffer buffer = new StringBuffer();
        synchronized (buffer) {
          for (int j = 0; j < aList.size(); j++) {
            buffer.append(aList.get(j)).append(File.separator);
          }
View Full Code Here

Examples of org.eclipse.ecf.protocol.bittorrent.internal.encode.BEncodedDictionary

        + (event == null ? "" : "&event=" + event) + "&numwant=" //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        + request + "&compact=1" + "&key=" + key //$NON-NLS-1$ //$NON-NLS-2$
        + (trackerID != null ? "&trackerid=" + trackerID : ""); //$NON-NLS-1$ //$NON-NLS-2$
    TorrentConfiguration.debug("Querying the tracker at " + link); //$NON-NLS-1$
    URL url = new URL(link);
    BEncodedDictionary dictionary = Decode.bDecode(url.openStream());
    if (event != null && event.equals("stopped")) { //$NON-NLS-1$
      return;
    }

    String failure = (String) dictionary.get("failure reason"); //$NON-NLS-1$
    if (failure != null) {
      fireTrackerErrorEvent(failure);
      TorrentConfiguration.debug("The client could not connect to the tracker, the reason provided was - " + failure); //$NON-NLS-1$
      return;
    }
    timeout = ((Long) dictionary.get("interval")).intValue() * 1000; //$NON-NLS-1$
    if (trackerID == null) {
      trackerID = (String) dictionary.get("tracker id"); //$NON-NLS-1$
    }

    Long number = (Long) dictionary.get("completed"); //$NON-NLS-1$
    seeders = number != null ? number.intValue() : -1;
    number = (Long) dictionary.get("incompleted"); //$NON-NLS-1$
    peers = number != null ? number.intValue() : -1;

    Object peersList = dictionary.get("peers"); //$NON-NLS-1$
    if (peersList instanceof List) {
      TorrentConfiguration.debug("No peers were returned"); //$NON-NLS-1$
      return;
    }

View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.