09_stateful_counters/src/ParticipantSite.java

/*
 * Copyright 2001-2006 Geert Bevin <gbevin[remove] at uwyn dot com>
 * Distributed under the terms of either:
 * - the common development and distribution license (CDDL), v1.0; or
 * - the GNU Lesser General Public License, v2.1 or later
 * $Id: ParticipantSite.java 3364 2006-07-10 10:33:29Z gbevin $
 */
import com.uwyn.rife.engine.Site;
import com.uwyn.rife.engine.SiteBuilder;
import com.uwyn.rife.engine.elements.PrintTemplate;
import com.uwyn.rife.rep.BlockingParticipant;

public class ParticipantSite extends BlockingParticipant {
    private Site site;
    
    protected void initialize() {
        SiteBuilder builder = new SiteBuilder("main");
        builder
            .setArrival("PrintTemplate")
            
            .enterElement()
                .setImplementation(PrintTemplate.class)
                .setUrl("home")
                .addProperty("name", "home")
            .leaveElement()
            
            .enterElement()
                .setImplementation(Counter.class)
            .leaveElement();
        
        site = builder.getSite();
    }
    
    protected Object _getObject() {
        return site;
    }
}