Package org.apache.tapestry.junit.mock.c14

Source Code of org.apache.tapestry.junit.mock.c14.ListEdit

// Copyright 2004, 2005 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package org.apache.tapestry.junit.mock.c14;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.ResourceBundle;

import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.form.EnumPropertySelectionModel;
import org.apache.tapestry.form.IPropertySelectionModel;
import org.apache.tapestry.html.BasePage;

/**
* Page for testing the {@link org.apache.tapestry.form.ListEdit}component.
*
* @author Howard Lewis Ship
* @since 3.0
*/

public abstract class ListEdit extends BasePage
{
    public abstract Map getColorMap();

    public abstract void setColorMap(Map colorMap);

    public abstract String getColorKey();

    private IPropertySelectionModel _colorModel;

    public IPropertySelectionModel getColorModel()
    {
        if (_colorModel == null)
            _colorModel = buildColorModel();

        return _colorModel;
    }

    private IPropertySelectionModel buildColorModel()
    {
        ResourceBundle bundle = ResourceBundle.getBundle(
                Color.class.getName() + "Strings",
                getLocale());

        return new EnumPropertySelectionModel(Color.ALL_COLORS, bundle);
    }

    public List getSortedColorKeys()
    {
        Map map = getColorMap();
        List result = new ArrayList(map.keySet());

        Collections.sort(result);

        return result;
    }

    protected void finishLoad()
    {
        Map colorMap = new HashMap();

        colorMap.put("Food", Color.RED);
        colorMap.put("Clothing", Color.BLACK);
        colorMap.put("Eye Color", Color.BLUE);

        setColorMap(colorMap);
    }

    /**
     * Had to implement these cause I couldn't remember the OGNL syntax for accessing a Map key.
     */

    public void setColor(Color color)
    {
        getColorMap().put(getColorKey(), color);
    }

    public Color getColor()
    {
        return (Color) getColorMap().get(getColorKey());
    }

    public void formSubmit(IRequestCycle cycle)
    {
        ListEditResults results = (ListEditResults) cycle.getPage("ListEditResults");

        results.setColorMap(getColorMap());

        cycle.activate(results);
    }

}
TOP

Related Classes of org.apache.tapestry.junit.mock.c14.ListEdit

TOP
Copyright © 2018 www.massapi.com. 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.