10_hangman/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.ioc.PropertyValueTemplate;
import com.uwyn.rife.rep.BlockingParticipant;

public class ParticipantSite extends BlockingParticipant {
    private Site site;
    
    protected void initialize() {
        SiteBuilder builder = new SiteBuilder("main");
        builder
            .setArrival("Guess")
        
            .enterElement()
                .setImplementation(Guess.class)
            .leaveElement()
        
            .enterElement()
                .setImplementation(LetterImage.class)
            .leaveElement()

            .enterElement()
                .setId("Win")
                .setUrl("win")
                .setImplementation(Outcome.class)
                .addProperty("template", new PropertyValueTemplate("win"))
            .leaveElement()
        
            .enterElement()
                .setId("Lose")
                .setUrl("lose")
                .setImplementation(Outcome.class)
                .addProperty("template", new PropertyValueTemplate("lose"))
            .leaveElement();
        
        site = builder.getSite();
    }

    protected Object _getObject() {
        return site;
    }
}