Package org.gudy.azureus2.plugins.utils.xml.simpleparser

Examples of org.gudy.azureus2.plugins.utils.xml.simpleparser.SimpleXMLParserDocumentAttribute


   *
   * @since 3.0.0.7
   */
  private boolean nextUpdate() {
    if (iterDownloaders.hasNext()) {
      ResourceDownloader downloader = (ResourceDownloader) iterDownloaders.next();
      downloader.addListener(this);
      downloader.asyncDownload();
      return true;
    }
    return false;
  }
View Full Code Here


              }
             
              setProgress( 0 );
             
              downloader.addListener(
                new ResourceDownloaderAdapter()
                {
                  public void
                  reportPercentComplete(
                    ResourceDownloader  downloader,
                    int          percentage )
View Full Code Here

  readLocalisableString(
    SimpleXMLParserDocumentNode  kid )
   
    throws TOTorrentException
  {
    SimpleXMLParserDocumentAttribute attr = kid.getAttribute("encoding");
   
    if ( attr == null || attr.getValue().equalsIgnoreCase("bytes")){
   
      return( readGenericBytes( kid ));
    }
   
    try{
View Full Code Here

    if ( link_node != null ){

      try{
        if ( is_atom ){
         
          SimpleXMLParserDocumentAttribute attr = link_node.getAttribute( "href" );
         
          if ( attr == null ){
           
            return( null );
          }
         
          String  value = attr.getValue().trim();
         
          if ( value.length() == 0 ){
           
            return( null );
          }
View Full Code Here

             
              String  value = child.getValue();
             
              if (lc_child_name.equals( "enclosure" )){
               
                SimpleXMLParserDocumentAttribute typeAtt = child.getAttribute("type");
               
                if( typeAtt != null && typeAtt.getValue().equalsIgnoreCase( "application/x-bittorrent")) {
                 
                  SimpleXMLParserDocumentAttribute urlAtt = child.getAttribute("url");
                 
                  if( urlAtt != null ){
                   
                    result.setTorrentLink(urlAtt.getValue());
                  }
                 
                  SimpleXMLParserDocumentAttribute lengthAtt = child.getAttribute("length");
                 
                  if (lengthAtt != null){
                   
                    result.setSizeFromHTML(lengthAtt.getValue());
                  }
                }
              }else if(lc_child_name.equals( "category" )) {
                               
                result.setCategoryFromHTML( value );
               
              }else if(lc_child_name.equals( "comments" )){
               
                result.setCommentsFromHTML( value );
               
              }else if ( lc_child_name.equals( "link" ) || lc_child_name.equals( "guid" )) {
               
                String lc_value = value.toLowerCase();
                               
                try{
                  URL url = new URL(value);

                  if (   lc_value.endsWith( ".torrent" ) ||
                      lc_value.startsWith( "magnet:" ) ||
                      lc_value.startsWith( "bc:" ) ||
                      lc_value.startsWith( "bctp:" ) ||
                      lc_value.startsWith( "dht:" )){
                   
                   
                    result.setTorrentLink(value);
                   
                  }else if ( lc_child_name.equals( "link" ) && !vuze_feed ){
                 
                    long  test = getLocalLong( LD_LINK_IS_TORRENT, 0 );
                 
                    if ( test == 1 ){
                   
                      result.setTorrentLink( value );
                     
                    }else if ( test == 0 || SystemTime.getCurrentTime() - test > 60*1000 ){
                   
                      if ( linkIsToTorrent( url )){
                     
                        result.setTorrentLink(value);
                       
                        setLocalLong( LD_LINK_IS_TORRENT, 1 );
                       
                      }else{
                       
                        setLocalLong( LD_LINK_IS_TORRENT, SystemTime.getCurrentTime());
                      }
                    }
                  }
                }catch( Throwable e ){
                 
                    // see if this is an atom feed
                    //  <link rel="alternate" type="application/x-bittorrent" href="http://asdasd/
                 
                  SimpleXMLParserDocumentAttribute typeAtt = child.getAttribute( "type" );
                 
                  if ( typeAtt != null && typeAtt.getValue().equalsIgnoreCase("application/x-bittorrent")) {
                 
                    SimpleXMLParserDocumentAttribute hrefAtt = child.getAttribute( "href" );
                   
                    if ( hrefAtt != null ){
                     
                      String  href = hrefAtt.getValue().trim();
                     
                      try{
                       
                        result.setTorrentLink( new URL( href ).toExternalForm() );
                       
                      }catch( Throwable f ){
                       
                      }
                    }
                  }
                }
              }else if ( lc_child_name.equals( "content" ) && rssFeed.isAtomFeed()){
               
                SimpleXMLParserDocumentAttribute srcAtt = child.getAttribute( "src" );
               
                String  src = srcAtt==null?null:srcAtt.getValue();
                     
                if ( src != null ){
                 
                  boolean  is_dl_link = false;
                 
                  SimpleXMLParserDocumentAttribute typeAtt = child.getAttribute( "type" );
                 
                  if ( typeAtt != null && typeAtt.getValue().equalsIgnoreCase("application/x-bittorrent")) {

                    is_dl_link = true;
                  }
                 
                  if ( !is_dl_link ){
                 
                    is_dl_link = src.toLowerCase().indexOf( ".torrent" ) != -1;
                  }
                   
                  if ( is_dl_link ){
                   
                    try{
                      new URL( src );
                   
                      result.setTorrentLink( src );
                     
                    }catch( Throwable e ){
                    }
                  }
                }
              }else if ( lc_full_child_name.equals( "vuze:size" )){
               
                result.setSizeFromHTML( value );
               
              }else if ( lc_full_child_name.equals( "vuze:seeds" )){
               
                got_seeds_peers = true;
               
                result.setNbSeedsFromHTML( value );
               
              }else if ( lc_full_child_name.equals( "vuze:superseeds" )){
               
                got_seeds_peers = true;
               
                result.setNbSuperSeedsFromHTML( value );
               
              }else if ( lc_full_child_name.equals( "vuze:peers" )){
               
                got_seeds_peers = true;
               
                result.setNbPeersFromHTML( value );
               
              }else if ( lc_full_child_name.equals( "vuze:rank" )){
               
                result.setRankFromHTML( value );
               
              }else if ( lc_full_child_name.equals( "vuze:contenttype" )){
               
                String  type = value.toLowerCase();
               
                if ( type.startsWith( "video" )){
                 
                  type = Engine.CT_VIDEO;
                 
                }else if ( type.startsWith( "audio" )){
                 
                  type = Engine.CT_AUDIO;
                 
                }else if ( type.startsWith( "games" )){
                 
                  type = Engine.CT_GAME;
                }
               
                result.setContentType( type );
               
              }else if ( lc_full_child_name.equals( "vuze:downloadurl" )){

                result.setTorrentLink( value);
               
              }else if ( lc_full_child_name.equals( "vuze:playurl" )){

                result.setPlayLink( value);
               
              }else if ( lc_full_child_name.equals( "vuze:drmkey" )){

                result.setDrmKey( value);
               
              }else if ( lc_full_child_name.equals( "vuze:assethash" )){

                result.setHash( value);
              }
            }
          }
         
          if ( !got_seeds_peers ){
           
            try{
              SimpleXMLParserDocumentNode desc_node = node.getChild( "description" );
             
              if ( desc_node != null ){
               
                String desc = desc_node.getValue().trim();
               
                  // see if we can pull from description
               
                Matcher m = seed_leecher_pat.matcher( desc );
             
                while( m.find()){
                 
                  String  num = m.group(1);
                 
                  String  type = m.group(2);
                 
                  if ( type.toLowerCase().charAt(0) == 's' ){
                   
                    result.setNbSeedsFromHTML( num );
                   
                  }else{
                   
                    result.setNbPeersFromHTML( num );
                  }
                }
              }
             
            }catch( Throwable e ){
             
            }
          }
         
            // override existing values with explicit <torrent> entry if present
         
          try{
            SimpleXMLParserDocumentNode torrent_node = node.getChild( "torrent" );
           
            if ( torrent_node != null ){
           
              if ( result.getSize() <= 0 ){
               
                SimpleXMLParserDocumentNode n = torrent_node.getChild( "contentLength" );
               
                if ( n != null ){
                 
                  try{
                    long l = Long.parseLong( n.getValue().trim());
                   
                    result.setSizeFromHTML( l + " B" );
                   
                  }catch( Throwable e ){
                   
                  }
                }
              }
             
              String dlink = result.getDownloadLink();
             
              if ( dlink == null || dlink.length() == 0 ){
               
                SimpleXMLParserDocumentNode n = torrent_node.getChild( "magnetURI" );
               
                if ( n != null ){
                 
                  dlink = n.getValue().trim();
                 
                  result.setTorrentLink( dlink );
                }
              }
             
              String hash = result.getHash();
             
              if ( hash == null || hash.length() == 0 ){
               
                SimpleXMLParserDocumentNode n = torrent_node.getChild( "infoHash" );
               
                if ( n != null ){
                 
                  String h = n.getValue().trim();
                 
                  result.setHash( h );
                 
                  if ( dlink == null || dlink.length() == 0 ){
                   
                    String uri = UrlUtils.normaliseMagnetURI( h );
                   
                    if ( uri != null ){
                     
                      result.setTorrentLink( uri );
                    }
                  }
                }
              }
             
              SimpleXMLParserDocumentNode trackers_node = torrent_node.getChild( "trackers" );

              if ( trackers_node != null && !got_seeds_peers ){
               
                SimpleXMLParserDocumentNode[] groups = trackers_node.getChildren();
               
                int  max_total = -1;
               
                int  best_seeds    = 0;
                int  best_leechers  = 0;
               
                for ( SimpleXMLParserDocumentNode group: groups ){
                 
                  SimpleXMLParserDocumentNode[] g_kids = group.getChildren();
                 
                  for ( SimpleXMLParserDocumentNode t: g_kids ){
                   
                    if ( t.getName().equalsIgnoreCase( "tracker" )){
                     
                      SimpleXMLParserDocumentAttribute a_seeds   = t.getAttribute( "seeds" );
                      SimpleXMLParserDocumentAttribute a_leechers = t.getAttribute( "peers" );
                     
                      int  seeds     = a_seeds==null?-1:Integer.parseInt( a_seeds.getValue().trim());
                      int  leechers   = a_leechers==null?-1:Integer.parseInt( a_leechers.getValue().trim());
                     
                      int  total = seeds + leechers;
                     
                      if ( total > max_total ){
                     
View Full Code Here

    props         = new propertyWrapper(_props );
    pluginDir       = _pluginDir;
    config         = new PluginConfigImpl(this,pluginConfigKey);
    given_plugin_id      = _plugin_id;
    plugin_version    = _plugin_version;
    ipc_interface      = new IPCInterfaceImpl( initialiser, plugin );
    state                 = new PluginStateImpl(this, initialiser);
   
    boolean verified   = false;
    boolean bad    = false;
   
View Full Code Here

  }
 
  public IPFilter
  getIPFilter()
  {
    return( new IPFilterImpl());
  }
View Full Code Here

 
  public Logger getLogger()
  {
    if ( logger == null ){
     
      logger = new LoggerImpl( this );
    }
   
    return( logger );
  }
View Full Code Here

    else {
      plug_msg = new MessageAdapter( message )//core created
    }
   
    RawMessage raw_plug = plug_encoder.encodeMessage( plug_msg );
    return new com.aelitis.azureus.core.networkmanager.RawMessage[]{ new RawMessageAdapter( raw_plug )};
  }
View Full Code Here

    return config;
  }


  public PluginConfigUIFactory getPluginConfigUIFactory() {
    return new PluginConfigUIFactoryImpl(config,pluginConfigKey);
  }
View Full Code Here

TOP

Related Classes of org.gudy.azureus2.plugins.utils.xml.simpleparser.SimpleXMLParserDocumentAttribute

Copyright © 2018 www.massapicom. 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.