Package org.gudy.azureus2.core3.util

Examples of org.gudy.azureus2.core3.util.TimeLimitedTask


    Map         localizationPaths,
    Collection       resource_bundles,
    int          initCapacity
  {
    this.initCapacity = initCapacity;
    messages = new LightHashMap(initCapacity);

    locale = main.getLocale();

      // use a somewhat decent initial capacity, proper calculation would require java 1.6
   
    addResourceMessages( main );
   
    synchronized (localizationPaths)
    {
      for (Iterator iter = localizationPaths.keySet().iterator(); iter.hasNext();){
        String localizationPath = (String) iter.next();
        ClassLoader classLoader = (ClassLoader) localizationPaths.get(localizationPath);

        addPluginBundle(localizationPath, classLoader);
      }
    }

    if (resource_bundles != null) {
      synchronized (resource_bundles)
      {
        for (Iterator itr = resource_bundles.iterator(); itr.hasNext();) {
          addResourceMessages((ResourceBundle)itr.next());
        }
      }

    }
   
    used_messages = new LightHashMap( messages.size());
   
    synchronized( bundle_map ){
     
      bundle_map.put( this, NULL_OBJECT );
     
View Full Code Here


  }
 
  protected Iterator
  getKeysLight()
  {
    Map m = new LightHashMap(loadMessages());
   
    return( m.keySet().iterator());
  }
View Full Code Here

      }
    }
   
    if ( clean_count > 5 ){
   
      Map  compact_um = new LightHashMap( used_messages.size() + 16 );
     
      compact_um.putAll( used_messages );
     
      used_messages = compact_um;
     
      return( false );
     
View Full Code Here

     
      Map  result;
     
      if ( scratch_file_is == null ){
       
        result = new LightHashMap();
       
      }else{
     
          // System.out.println( "read cache file " + scratch_file_name + " for " + this );

       
        Properties p = new Properties();
       
        InputStream  fis = scratch_file_is;
       
        try{
                 
          p.load( fis );
         
          fis.close();
         
          scratch_file_is = new FileInputStream( scratch_file_name );
         
          messages = new LightHashMap();
         
          messages.putAll( p );
         
          result = messages;
         
        }catch( Throwable e ){
         
          if ( fis != null ){
           
            try{
              fis.close();
             
            }catch( Throwable f ){
            }
          }
         
          Debug.out( "Failed to load message bundle scratch file", e );
         
          scratch_file_name.delete();
         
          scratch_file_is = null;
         
          result = new LightHashMap();
        }
      }
     
      if ( added_strings != null ){
       
View Full Code Here

      null_values = null;
    }
  }
 
  public void clearUsedMessagesMap(int initialCapacity) {
    used_messages = new LightHashMap(initialCapacity);
    if (null_values != null) {
      null_values = new ArrayList(0);
    }
  }
View Full Code Here

        else if( type.equalsIgnoreCase("string") ) {
          COConfigurationManager.setParameter( internal_name, setto );
          success = true;
        }
        else if( type.equalsIgnoreCase("password") ) {
          SHA1Hasher hasher = new SHA1Hasher();
         
          byte[] password = setto.getBytes();
         
          byte[] encoded;
         
          if(password.length > 0){
           
            encoded = hasher.calculateHash(password);
           
          }else{
           
            encoded = password;
          }
View Full Code Here

     
    }
     */
       
    try{
      TimeLimitedTask task = new TimeLimitedTask(
        "MetaSearch:regexpr",
        30*1000,
        Thread.NORM_PRIORITY - 1,
        new TimeLimitedTask.task()
        {
          public Object
          run()
         
            throws Exception
          {
            int  max_matches = o_absolute_max_matches;
               
            if ( max_matches < 0 || max_matches > 1024 ){
             
              max_matches = 1024;
            }
           
            String searchQuery = null;
           
            for(int i = 0 ; i < searchParameters.length ; i++) {
              if(searchParameters[i].getMatchPattern().equals("s")) {
                searchQuery = searchParameters[i].getValue();
              }
            }
           
           
            FieldMapping[] mappings = getMappings();
 
            try{           
              List results = new ArrayList();
               
              Matcher m = pattern.matcher( page );
               
              while( m.find()){
               
                if ( max_matches >= 0 ){
                  if ( --max_matches < 0 ){
                    break;
                  }
                }
               
                if ( listener != null ){
                 
                  String[]  groups = new String[m.groupCount()];
                 
                  for (int i=0;i<groups.length;i++){
                   
                    groups[i] = m.group(i+1);
                  }
                 
                  listener.matchFound( RegexEngine.this, groups );
                }
               
                debugLog( "Found match:" );
               
                WebResult result = new WebResult(RegexEngine.this,getRootPage(),getBasePage(),getDateParser(),searchQuery);
               
                int  fields_matched = 0;
               
                for(int i = 0 ; i < mappings.length ; i++) {
                  int group = -1;
                  try {
                    group = Integer.parseInt(mappings[i].getName());
                  } catch(Exception e) {
                    //In "Debug/Test" mode, we should fire an exception / notification
                  }
                 
                  if (group > 0 && group <= m.groupCount()) {
                   
                    int field = mappings[i].getField();
                    String groupContent = m.group(group);
                   
                    debugLog( "    " + field + "=" + groupContent );
                   
                    fields_matched++;
                   
                    switch(field) {
                      case FIELD_NAME :
                        result.setNameFromHTML(groupContent);
                        break;
                      case FIELD_SIZE :
                        result.setSizeFromHTML(groupContent);
                        break;
                      case FIELD_PEERS :
                        result.setNbPeersFromHTML(groupContent);
                        break;
                      case FIELD_SEEDS :
                        result.setNbSeedsFromHTML(groupContent);
                        break;
                      case FIELD_CATEGORY :
                        result.setCategoryFromHTML(groupContent);
                        break;
                      case FIELD_DATE :
                        result.setPublishedDateFromHTML(groupContent);
                        break;
                      case FIELD_CDPLINK :
                        result.setCDPLink(groupContent);
                        break;
                      case FIELD_TORRENTLINK :
                        result.setTorrentLink(groupContent);
                        break;
                      case FIELD_PLAYLINK :
                        result.setPlayLink(groupContent);
                        break;
                      case FIELD_DOWNLOADBTNLINK :
                        result.setDownloadButtonLink(groupContent);
                        break;
                      case FIELD_COMMENTS :
                        result.setCommentsFromHTML(groupContent);
                        break;
                      case FIELD_VOTES :
                        result.setVotesFromHTML(groupContent);
                        break;
                      case FIELD_SUPERSEEDS :
                        result.setNbSuperSeedsFromHTML(groupContent);
                        break;
                      case FIELD_PRIVATE :
                        result.setPrivateFromHTML(groupContent);
                        break;
                      case FIELD_DRMKEY :
                        result.setDrmKey(groupContent);
                        break;
                      case FIELD_VOTES_DOWN :
                        result.setVotesDownFromHTML(groupContent);
                        break;
                      case FIELD_HASH :
                        result.setHash(groupContent);
                        break;
                      default:
                        fields_matched--;
                        break;
                    }
                  }
                }
               
                  // ignore "matches" that don't actually populate any fields
               
                if ( fields_matched > 0 ){
               
                  results.add(result);
                }
              }
               
                // hack - if no results and redirected to https and auth required then
                // assume we need to log in...
             
              if ( results.size() == 0 && isNeedsAuth()){
               
                if (   page_details.getInitialURL().getProtocol().equalsIgnoreCase( "http" ) &&
                    page_details.getFinalURL().getProtocol().equalsIgnoreCase( "https" )){
                 
                  throw new SearchLoginException("login possibly required");
                }
              }
             
              return (Result[]) results.toArray(new Result[results.size()]);
             
            }catch (Throwable e){
             
              log( "Failed process result", e );
       
              if ( e instanceof SearchException ){
               
                throw((SearchException)e );
              }
             
              throw new SearchException(e);
            }
          }
        });
     
      Result[] res = (Result[])task.run();
     
      debugLog( "success: found " + res.length + " results" );
     
      return( res );
     
View Full Code Here

      lblX.setImage(img);
    }


    filterDelayTimer = new Timer("Filter");
    filterDelayTimer.addEvent(SystemTime.getCurrentTime() + 300,
        new TimerEventPerformer() {
          public void perform(TimerEvent event) {
            filterDelayTimer.destroy();
            filterDelayTimer = null;
View Full Code Here

      if ( compact_timer == null && System.getProperty("transitory.startup", "0").equals("0")){
               
        compact_timer = SimpleTimer.addPeriodicEvent(
          "IRB:compactor",
          60*1000,
          new TimerEventPerformer()
          {
            public void
            perform(
              TimerEvent event )
            { 
View Full Code Here

          }
         
          System.setProperty( "java.protocol.handler.pkgs", handlers );
          */
       
        URL.setURLStreamHandlerFactory(new AzURLStreamHandlerFactory());
            
            // DNS cache timeouts
         
          System.setProperty("sun.net.inetaddr.ttl", "60");
          System.setProperty("networkaddress.cache.ttl", "60");
View Full Code Here

TOP

Related Classes of org.gudy.azureus2.core3.util.TimeLimitedTask

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.