亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? componentdefinition.java

?? struts的源代碼
?? JAVA
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
/*
 * $Id: ComponentDefinition.java 54929 2004-10-16 16:38:42Z germuska $ 
 *
 * Copyright 1999-2004 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.struts.tiles;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.tiles.xmlDefinition.XmlDefinition;
import org.apache.struts.util.RequestUtils;

/**
 * Definition of a template / component attributes.
 * Attributes of a component can be defined with the help of this class.
 * An instance of this class can be used as a bean, and passed to 'insert' tag.
 */
public class ComponentDefinition implements Serializable {

    /**
     * Commons Logging instance. 
     */
    protected static Log log = LogFactory.getLog(ComponentDefinition.class);

    /**
     * Definition name
     */
    protected String name = null;

    /**
     * Component / template path (URL).
     */
    protected String path = null;

    /**
     * Attributes defined for the component.
     */
    protected Map attributes = null;

    /** 
     * Role associated to definition. 
     */
    protected String role = null;

    /** Associated Controller URL or classname, if defined */
    protected String controller = null;

    /** 
     * Associated Controller typename, if controllerName defined.
     * Can be CONTROLLER, ACTION or URL, or null. 
     */
    protected String controllerType = null;

    /** 
     * Controller name type. 
     */
    public static final String URL = "url";

    /** 
     * Controller name type. 
     */
    public static final String CONTROLLER = "controller";

    /** 
     * Controller name type. 
     */
    public static final String ACTION = "action";

    /**
     * Controller associated to Definition.
     * Lazy creation : only on first request
     */
    private Controller controllerInstance = null;

    /**
     * Constructor.
     */
    public ComponentDefinition() {
        attributes = new HashMap();
    }

    /**
     * Copy Constructor.
     * Create a new definition initialized with parent definition.
     * Do a shallow copy : attributes are shared between copies, but not the Map
     * containing attributes.
     */
    public ComponentDefinition(ComponentDefinition definition) {
        attributes = new HashMap(definition.getAttributes());
        this.name = definition.getName();
        this.path = definition.getPath();
        this.role = definition.getRole();
        this.controllerInstance = definition.getControllerInstance();
        this.controller = definition.getController();
        this.controllerType = definition.getControllerType();
    }

    /**
     * Constructor.
     * Create a new definition initialized from a RawDefinition.
     * Raw definitions are used to read definition from a data source (xml file, db, ...).
     * A RawDefinition mainly contains properties of type String, while Definition
     * contains more complex type (ex : Controller).
     * Do a shallow copy : attributes are shared between objects, but not the Map
     * containing attributes.
     * OO Design issues : Actually RawDefinition (XmlDefinition) extends ComponentDefinition.
     * This must not be the case. I have do it because I am lazy.
     * @throws InstantiationException if an error occur while instanciating Controller :
     * (classname can't be instanciated, Illegal access with instanciated class,
     * Error while instanciating class, classname can't be instanciated.
     */
    public ComponentDefinition(XmlDefinition definition) {

        this((ComponentDefinition) definition);
    }

    /**
     * Constructor.
     */
    public ComponentDefinition(String name, String path, Map attributes) {
        this.name = name;
        this.path = path;
        this.attributes = attributes;
    }

    /**
     * Access method for the name property.
     *
     * @return   the current value of the name property
     */
    public String getName() {
        return name;
    }

    /**
     * Sets the value of the name property.
     *
     * @param aName the new value of the name property
     */
    public void setName(String aName) {
        name = aName;
    }

    /**
     * Access method for the path property.
     *
     * @return The current value of the path property.
     */
    public String getPage() {
        return path;
    }

    /**
     * Sets the value of the path property.
     *
     * @param page the new value of the path property
     */
    public void setPage(String page) {
        path = page;
    }

    /**
     * Access method for the path property.
     *
     * @return   the current value of the path property
     */
    public String getPath() {
        return path;
    }

    /**
     * Sets the value of the path property.
     *
     * @param aPath the new value of the path property
     */
    public void setPath(String aPath) {
        path = aPath;
    }

    /**
     * Access method for the template property.
     * Same as getPath()
     * @return   the current value of the template property
     */
    public String getTemplate() {
        return path;
    }

    /**
     * Sets the value of the template property.
     * Same as setPath()
     *
     * @param template the new value of the path property
     */
    public void setTemplate(String template) {
        path = template;
    }

    /**
     * Access method for the role property.
     * @return   the current value of the role property
     */
    public String getRole() {
        return role;
    }

    /**
     * Sets the value of the role property.
     *
     * @param role the new value of the path property
     */
    public void setRole(String role) {
        this.role = role;
    }

    /**
     * Access method for the attributes property.
     * If there is no attributes, return an empty map.
     * @return   the current value of the attributes property
     */
    public Map getAttributes() {
        return attributes;
    }

    /**
     * Returns the value of the named attribute as an Object, or null if no
     * attribute of the given name exists.
     *
     * @return   requested attribute or null if not found
     */
    public Object getAttribute(String key) {
        return attributes.get(key);
    }

    /**
     * Put a new attribute in this component
     *
     * @param key String key for attribute
     * @param value Attibute value.
     */
    public void putAttribute(String key, Object value) {
        attributes.put(key, value);
    }

    /**
     * Put an attribute in component / template definition.
     * Attribute can be used as content for tag get.
     * @param name Attribute name
     * @param content Attribute value
     */
    public void put(String name, Object content) {
        put(name, content, false, null);
    }

    /**
     * Put an attribute in template definition.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天堂影院一区二区| 欧美午夜精品久久久| 99国产一区二区三精品乱码| 日本韩国一区二区| 337p亚洲精品色噜噜噜| 欧美顶级少妇做爰| 欧美国产丝袜视频| 亚洲一级二级在线| 久草精品在线观看| 色综合久久久久久久久| 欧美一区二区成人6969| 国产精品护士白丝一区av| 亚洲18色成人| 成人精品视频一区| 欧美精品亚洲二区| 国产日产欧美一区二区三区| 亚洲黄网站在线观看| 国产一区二区中文字幕| 在线国产亚洲欧美| 久久久久久久综合日本| 亚洲国产视频一区二区| 国产成人在线网站| 欧美日韩视频一区二区| 国产欧美日本一区二区三区| 亚洲va欧美va人人爽午夜| 国产成人精品亚洲午夜麻豆| 欧美色图一区二区三区| 久久久亚洲精华液精华液精华液 | 美女任你摸久久| aaa亚洲精品| 日韩三级在线观看| 一区二区三区色| 成人免费看视频| 精品少妇一区二区三区免费观看 | 欧美在线不卡一区| 国产欧美一区二区精品秋霞影院| 一区二区三区四区av| 国产不卡视频一区| 日韩欧美另类在线| 亚洲一区二区成人在线观看| 成人免费的视频| 精品国产伦一区二区三区免费| 亚洲精品视频一区| 国产剧情一区二区| 日韩欧美卡一卡二| 午夜精品aaa| 91成人网在线| 国产精品欧美久久久久一区二区| 国内精品免费**视频| 日韩无一区二区| 久88久久88久久久| 5858s免费视频成人| 亚洲午夜在线视频| 在线观看一区日韩| 亚洲猫色日本管| 成人一级片在线观看| 2020国产成人综合网| 美女爽到高潮91| 5858s免费视频成人| 亚洲成av人片| 欧美精品在欧美一区二区少妇| 亚洲精品视频自拍| 91视频国产观看| 亚洲欧洲另类国产综合| 波多野结衣中文字幕一区| 国产日韩欧美电影| 国产高清久久久| 久久免费电影网| 国产成人精品网址| 国产日本欧洲亚洲| 成人免费毛片片v| 国产精品传媒在线| av在线不卡网| 国产精品毛片a∨一区二区三区| 国产99精品视频| 国产精品久久看| 91蜜桃婷婷狠狠久久综合9色| 中文字幕日韩一区二区| 99re亚洲国产精品| 亚洲在线中文字幕| 欧美日韩免费高清一区色橹橹 | 欧美日本一道本在线视频| 亚洲图片欧美一区| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲444eee在线观看| 欧美丰满美乳xxx高潮www| 奇米亚洲午夜久久精品| 日韩欧美一区二区三区在线| 黄色小说综合网站| 久久精品人人做人人综合 | 综合激情网...| 在线观看视频一区二区| 天天综合日日夜夜精品| 日韩欧美亚洲一区二区| 国产一区二区网址| 国产精品人人做人人爽人人添| 91视频观看免费| 亚瑟在线精品视频| 欧美大尺度电影在线| 国产盗摄女厕一区二区三区| 国产精品国模大尺度视频| 在线视频国内一区二区| 日韩高清在线电影| 2021国产精品久久精品| 不卡的电视剧免费网站有什么| 亚洲男人的天堂在线观看| 在线播放视频一区| 国产成人精品影视| 日韩理论电影院| 91精品国产一区二区人妖| 国产伦精品一区二区三区免费| 国产亚洲欧美一区在线观看| 91麻豆123| 麻豆成人在线观看| 国产精品无遮挡| 欧美丝袜自拍制服另类| av不卡免费电影| 亚洲成年人影院| 国产亚洲精品久| 欧美三级日本三级少妇99| 久久99精品国产.久久久久| 亚洲图片激情小说| 日韩欧美一区二区三区在线| 成人av在线播放网址| 日韩激情一区二区| 亚洲国产成人在线| 精品视频色一区| 国产精品一区二区三区四区| 亚洲国产视频网站| 久久免费视频色| 欧美色爱综合网| 国产成人av电影在线| 亚洲bt欧美bt精品777| 国产精品视频线看| 欧美大胆人体bbbb| 欧美在线不卡一区| 成人激情免费视频| 男女男精品视频| 亚洲男人电影天堂| 国产亚洲精品福利| 欧美一卡二卡在线| 欧美在线|欧美| 成人性视频网站| 久久99国产精品久久99果冻传媒| 亚洲精品成人悠悠色影视| 国产视频一区不卡| 日韩欧美在线网站| 欧美影院一区二区| 成人国产在线观看| 极品少妇xxxx精品少妇偷拍| 亚洲va韩国va欧美va精品| 1024精品合集| 国产人成亚洲第一网站在线播放| 欧美一级电影网站| 欧洲av在线精品| 91色porny| 成人短视频下载| 国产超碰在线一区| 国产一区二区在线看| 美女尤物国产一区| 偷拍与自拍一区| 亚洲午夜激情av| 亚洲精品国产精华液| 国产精品第一页第二页第三页| 国产亚洲短视频| 2023国产精华国产精品| 日韩你懂的在线观看| 91精品国产一区二区| 欧美日韩黄色一区二区| 欧美在线免费播放| 欧美影院一区二区三区| 一本在线高清不卡dvd| 成人福利电影精品一区二区在线观看| 国产九色精品成人porny| 久久99国内精品| 韩国欧美国产1区| 另类小说欧美激情| 蜜臀av亚洲一区中文字幕| 亚洲国产aⅴ成人精品无吗| 亚洲综合色成人| 亚洲在线一区二区三区| 亚洲精品国产a| 亚洲一区二区不卡免费| 亚洲二区在线视频| 午夜精品一区二区三区三上悠亚| 亚洲国产精品一区二区久久恐怖片| 亚洲欧美国产77777| 亚洲欧美视频一区| 亚洲美女一区二区三区| 亚洲精品免费看| 亚洲午夜在线视频| 天堂蜜桃一区二区三区| 日本亚洲视频在线| 精品一区二区免费| 国产精品91xxx| 成人h动漫精品一区二区| 91日韩在线专区| 欧美日韩精品一区二区三区| 91精品国产综合久久蜜臀| 日韩精品一区二区在线观看|