Code Search for Developers
 
 
  

SessionToPage.java from Tea Stats at Krugle


Show SessionToPage.java syntax highlighted

package net.time4tea.webstats.analyser;

import net.time4tea.webstats.filter.bool.TrueFilter;
import net.time4tea.webstats.jms.EnvironmentException;
import net.time4tea.webstats.process.Processor;
import net.time4tea.webstats.record.Page;
import net.time4tea.webstats.session.Session;
import org.hamcrest.Matcher;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * Originally richja 11-May-2007
 */
public class SessionToPage implements Processor<Session> {

    private List<Processor<Page>> processors = new ArrayList<Processor<Page>>();
    private Matcher<Session> filter;

    public SessionToPage() {
        this(new TrueFilter<Session>());
    }

    public SessionToPage(Processor<Page>... processors) {
        this(new TrueFilter<Session>(), processors);
    }

    public SessionToPage(Matcher<Session> filter, Processor<Page>... processors) {
        this.processors.addAll(Arrays.asList(processors));
        this.filter = filter;
    }
    
    public boolean process(Session session) throws EnvironmentException {

        if (filter.matches(session)) {
            for (Page page : session.pages()) {
                for (Processor<Page> processor : processors) {
                    processor.process(page);
                }
            }
        }
        return true;
    }
}




See more files for this project here

Tea Stats

Web log analyzer... Written in OO Perl, provides the usual host / page analysis. Can also do site graphing using graphviz, browser, os, worm and search engine identification, and country and session tracking.

Project homepage: http://sourceforge.net/projects/teastats
Programming language(s): Java
License: other

  composite/
    page/
      BrowserErrorsAnalyser.java
      FileTypesAnalyser.java
    session/
      AllHitsAnalyser.java
      BrowserAnalyser.java
      HowManyClicksPerSessionAnalyser.java
      LocationAnalyser.java
      SearchEngineTermAnalyser.java
      SearchEngineTermWordAnalyser.java
      SessionCountAnalyser.java
      SessionDurationAnalyser.java
  extractor/
    key/
      AttributeKeyFinder.java
      BeanKeyFinder.java
      BrowserKeyFinder.java
      ConcatenatingKeyFinder.java
      ConstantKeyFinder.java
      CountryKeyFinder.java
      DurationBucketKeyFinder.java
      FileTypeKeyFinder.java
      FirstPageKeyFinder.java
      HostKeyFinder.java
      KeyFinder.java
      LocationKeyFinder.java
      MethodKeyFinder.java
      PageKeyFinder.java
      QueryParamKeyFinder.java
      RefererHostKeyFinder.java
      SearchEngineTermKeyFinder.java
      SearchEngineWordKeyFinder.java
      SessionBandwidthKeyFinder.java
      SessionSizeKeyFinder.java
      StatusKeyFinder.java
    value/
      BytesValueFinder.java
      ConstantValueFinder.java
      SessionLengthValueFinder.java
      SessionSizeValueFinder.java
      ValueFinder.java
    CalendarFinder.java
    DayOfWeekFinder.java
    ExtractionException.java
  AbstractAnalyser.java
  Analyser.java
  SessionToPage.java