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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? activationgroup.java

?? JAVA基本類源代碼,大家可以學習學習!
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/* * @(#)ActivationGroup.java	1.43 03/01/23 * * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package java.rmi.activation;import java.lang.reflect.Constructor;import java.net.URL;import java.net.MalformedURLException;import java.rmi.MarshalledObject;import java.rmi.Naming;import java.rmi.activation.UnknownGroupException;import java.rmi.activation.UnknownObjectException;import java.rmi.Remote;import java.rmi.RemoteException;import java.rmi.server.UnicastRemoteObject;import java.rmi.server.RMIClassLoader;import java.security.PrivilegedExceptionAction;import java.security.PrivilegedActionException;import sun.security.action.GetIntegerAction;/** * An <code>ActivationGroup</code> is responsible for creating new * instances of "activatable" objects in its group, informing its * <code>ActivationMonitor</code> when either: its object's become * active or inactive, or the group as a whole becomes inactive. <p> * * An <code>ActivationGroup</code> is <i>initially</i> created in one * of several ways: <ul> * <li>as a side-effect of creating an <code>ActivationDesc</code> *     without an explicit <code>ActivationGroupID</code> for the *     first activatable object in the group, or * <li>via the <code>ActivationGroup.createGroup</code> method * <li>as a side-effect of activating the first object in a group *     whose <code>ActivationGroupDesc</code> was only registered.</ul><p> * * Only the activator can <i>recreate</i> an * <code>ActivationGroup</code>.  The activator spawns, as needed, a * separate VM (as a child process, for example) for each registered * activation group and directs activation requests to the appropriate * group. It is implementation specific how VMs are spawned. An * activation group is created via the * <code>ActivationGroup.createGroup</code> static method. The * <code>createGroup</code> method has two requirements on the group * to be created: 1) the group must be a concrete subclass of * <code>ActivationGroup</code>, and 2) the group must have a * constructor that takes two arguments: * * <ul> * <li> the group's <code>ActivationGroupID</code>, and * <li> the group's initialization data (in a *      <code>java.rmi.MarshalledObject</code>)</ul><p> * * When created, the default implementation of * <code>ActivationGroup</code> will override the system properties * with the properties requested when its * <code>ActivationGroupDesc</code> was created, and will set a * <code>java.rmi.RMISecurityManager</code> as the default system * security manager.  If your application requires specific properties * to be set when objects are activated in the group, the application * should create a special <code>Properties</code> object containing * these properties, then create an <code>ActivationGroupDesc</code> * with the <code>Properties</code> object, and use * <code>ActivationGroup.createGroup</code> before creating any * <code>ActivationDesc</code>s (before the default * <code>ActivationGroupDesc</code> is created).  If your application * requires the use of a security manager other than * <code>java.rmi.RMISecurityManager</code>, in the * ActivativationGroupDescriptor properties list you can set * <code>java.security.manager</code> property to the name of the security * manager you would like to install. * * @author 	Ann Wollrath * @version	1.43, 03/01/23 * @see 	ActivationInstantiator * @see		ActivationGroupDesc * @see		ActivationGroupID * @since	1.2  */public abstract class ActivationGroup	extends UnicastRemoteObject	implements ActivationInstantiator{    /**     * @serial the group's identifier      */    private ActivationGroupID groupID;    /**     * @serial the group's monitor      */    private ActivationMonitor monitor;    /**      * @serial the group's incarnation number      */    private long incarnation;    /** the current activation group for this VM */    private static ActivationGroup currGroup;    /** the current group's identifier */    private static ActivationGroupID currGroupID;    /** the current group's activation system */    private static ActivationSystem currSystem;    /** used to control a group being created only once */    private static boolean canCreate = true;    /** formal parameters for constructing an activation group */    private static Class[] groupConstrParams = {	ActivationGroupID.class, MarshalledObject.class    };        /** indicate compatibility with the Java 2 SDK v1.2 version of class */    private static final long serialVersionUID = -7696947875314805420L;        /**     * Constructs an activation group with the given activation group     * identifier.  The group is exported as a     * <code>java.rmi.server.UnicastRemoteObject</code>.     *     * @param	groupID the group's identifier     * @throws	RemoteException if this group could not be exported     * @since	1.2      */    protected ActivationGroup(ActivationGroupID groupID)	throws RemoteException     {	// call super constructor to export the object	super();	this.groupID = groupID;    }    /**     * The group's <code>inactiveObject</code> method is called     * indirectly via a call to the <code>Activatable.inactive</code>     * method. A remote object implementation must call     * <code>Activatable</code>'s <code>inactive</code> method when     * that object deactivates (the object deems that it is no longer     * active). If the object does not call     * <code>Activatable.inactive</code> when it deactivates, the     * object will never be garbage collected since the group keeps     * strong references to the objects it creates. <p>     *     * <p>The group's <code>inactiveObject</code> method unexports the     * remote object from the RMI runtime so that the object can no     * longer receive incoming RMI calls. An object will only be unexported     * if the object has no pending or executing calls.     * The subclass of <code>ActivationGroup</code> must override this     * method and unexport the object. <p>     *     * <p>After removing the object from the RMI runtime, the group     * must inform its <code>ActivationMonitor</code> (via the monitor's     * <code>inactiveObject</code> method) that the remote object is     * not currently active so that the remote object will be     * re-activated by the activator upon a subsequent activation     * request.<p>     *     * <p>This method simply informs the group's monitor that the object     * is inactive.  It is up to the concrete subclass of ActivationGroup     * to fulfill the additional requirement of unexporting the object. <p>     *     * @param id the object's activation identifier     * @return true if the object was successfully deactivated; otherwise     *         returns false.     * @exception UnknownObjectException if object is unknown (may already     * be inactive)     * @exception RemoteException if call informing monitor fails     * @exception ActivationException if group is inactive     * @since 1.2      */    public boolean inactiveObject(ActivationID id)	throws ActivationException, UnknownObjectException, RemoteException     {	getMonitor().inactiveObject(id);	return true;    }    /**     * The group's <code>activeObject</code> method is called when an     * object is exported (either by <code>Activatable</code> object     * construction or an explicit call to     * <code>Activatable.exportObject</code>. The group must inform its     * <code>ActivationMonitor</code> that the object is active (via     * the monitor's <code>activeObject</code> method) if the group     * hasn't already done so.     *     * @param id the object's identifier     * @param obj the remote object implementation     * @exception UnknownObjectException if object is not registered     * @exception RemoteException if call informing monitor fails     * @exception ActivationException if group is inactive     * @since 1.2      */    public abstract void activeObject(ActivationID id, Remote obj)	throws ActivationException, UnknownObjectException, RemoteException;    /**     * Create and set the activation group for the current VM.  The     * activation group can only be set if it is not currently set.     * An activation group is set using the <code>createGroup</code>     * method when the <code>Activator</code> initiates the     * re-creation of an activation group in order to carry out     * incoming <code>activate</code> requests. A group must first be     * registered with the <code>ActivationSystem</code> before it can     * be created via this method.     *     * <p>The group class specified by the     * <code>ActivationGroupDesc</code> must be a concrete subclass of     * <code>ActivationGroup</code> and have a public constructor that     * takes two arguments: the <code>ActivationGroupID</code> for the     * group and the <code>MarshalledObject</code> containing the     * group's initialization data (obtained from the     * <code>ActivationGroupDesc</code>.     *     * <p>If the group class name specified in the     * <code>ActivationGroupDesc</code> is <code>null</code>, then     * this method will behave as if the group descriptor contained     * the name of the default activation group implementation class.     *     * <p>Note that if your application creates its own custom     * activation group, a security manager must be set for that     * group.  Otherwise objects cannot be activated in the group.     * <code>java.rmi.RMISecurityManager</code> is set by default.     *     * <p>If a security manager is already set in the group VM, this     * method first calls the security manager's     * <code>checkSetFactory</code> method.  This could result in a     * <code>SecurityException</code>. If your application needs to     * set a different security manager, you must ensure that the     * policy file specified by the group's     * <code>ActivationGroupDesc</code> grants the group the necessary     * permissions to set a new security manager.  (Note: This will be     * necessary if your group downloads and sets a security manager).     *     * <p>After the group is created, the     * <code>ActivationSystem</code> is informed that the group is     * active by calling the <code>activeGroup</code> method which     * returns the <code>ActivationMonitor</code> for the group. The     * application need not call <code>activeGroup</code>     * independently since it is taken care of by this method.     *     * <p>Once a group is created, subsequent calls to the     * <code>currentGroupID</code> method will return the identifier     * for this group until the group becomes inactive.     *     * @param id the activation group's identifier     * @param desc the activation group's descriptor     * @param incarnation the group's incarnation number (zero on group's     * initial creation)     * @return the activation group for the VM     * @exception ActivationException if group already exists or if error     * occurs during group creation      * @exception SecurityException if permission to create group is denied.     * (Note: The default implementation of the security manager      * <code>checkSetFactory</code>     * method requires the RuntimePermission "setFactory")     * @see SecurityManager#checkSetFactory     * @since 1.2     */    public static synchronized	ActivationGroup createGroup(ActivationGroupID id,				    final ActivationGroupDesc desc,				    long incarnation)        throws ActivationException

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级夜夜爽| 亚洲青青青在线视频| 国产日韩亚洲欧美综合| 亚洲综合另类小说| 国产成人免费9x9x人网站视频| 欧美日韩激情一区二区三区| 国产午夜亚洲精品理论片色戒| 91麻豆免费看| 久久综合狠狠综合久久综合88| 欧美一区二区三区在线视频| 国产精品国产三级国产普通话三级 | 亚洲精品第1页| 国产麻豆精品视频| 欧美日韩视频专区在线播放| 亚洲欧美综合色| 国产一区二区三区精品视频| 欧美一区二区视频网站| 偷拍一区二区三区四区| 欧洲中文字幕精品| 亚洲免费在线播放| av在线播放成人| 中文字幕精品一区二区三区精品| 中文字幕精品在线不卡| 国内精品国产三级国产a久久| 毛片基地黄久久久久久天堂| 欧美日韩国产影片| 亚洲欧洲综合另类在线| av亚洲精华国产精华| 欧美国产丝袜视频| 成人性生交大片免费看视频在线 | 国产精品污网站| 国产精品1区二区.| 337p日本欧洲亚洲大胆色噜噜| 中文字幕乱码日本亚洲一区二区 | 欧美国产禁国产网站cc| 韩日欧美一区二区三区| 精品国产乱码久久久久久影片| 久久精品一区二区三区四区| 日本aⅴ免费视频一区二区三区| 国产呦精品一区二区三区网站| 成人午夜电影久久影院| 亚洲国产精品国自产拍av| 国产黄色91视频| 国产精品嫩草久久久久| 懂色av一区二区三区蜜臀| 久久一日本道色综合| 成人短视频下载| 国产精品国产精品国产专区不蜜 | 午夜激情久久久| 欧美揉bbbbb揉bbbbb| 日韩av网站免费在线| 日韩一区二区电影在线| 国产精品资源网站| 亚洲欧洲日产国产综合网| 91麻豆国产在线观看| 午夜电影网亚洲视频| 欧美不卡一区二区三区| 高清不卡一区二区| 亚洲一区精品在线| 日韩欧美一级在线播放| 成人午夜私人影院| 婷婷中文字幕综合| 久久综合久久久久88| 99re6这里只有精品视频在线观看| 日韩精品中午字幕| 成人app在线观看| 亚洲国产精品久久久男人的天堂| 成人小视频在线| 日韩精品一二三区| 中文字幕久久午夜不卡| 欧美另类一区二区三区| 国产91露脸合集magnet | 91丨九色porny丨蝌蚪| 亚洲成av人在线观看| 日韩一级高清毛片| av激情亚洲男人天堂| 日韩电影在线一区| 中文字幕一区三区| 欧美不卡在线视频| 欧美色电影在线| 成人一级视频在线观看| 午夜av一区二区三区| 国产精品毛片久久久久久久| 欧美二区三区的天堂| proumb性欧美在线观看| 精品一区二区三区在线观看国产| 欧美精品在欧美一区二区少妇| 亚洲伦在线观看| 久久在线观看免费| 欧美日韩中字一区| 成人av免费在线| 国产精品一品二品| 久久99精品久久久久婷婷| 亚洲第一久久影院| 亚洲欧美日韩中文字幕一区二区三区| 国产成人免费网站| 美女www一区二区| 日韩专区欧美专区| 一区二区三区在线播放| 国产精品美女久久久久久| 欧美变态tickling挠脚心| 在线免费av一区| 91成人在线观看喷潮| 91网站视频在线观看| 成人黄色在线网站| 国产成人精品午夜视频免费| 日韩精品一二三| 天天爽夜夜爽夜夜爽精品视频| 日韩一区二区在线免费观看| 欧美性色黄大片手机版| 在线欧美一区二区| 在线中文字幕一区二区| 色婷婷一区二区三区四区| 91在线视频免费观看| 成人福利视频在线| 91啪亚洲精品| 日本道免费精品一区二区三区| 亚洲国产sm捆绑调教视频| 亚洲日本在线视频观看| 综合久久国产九一剧情麻豆| 国产精品护士白丝一区av| 中文字幕一区二区三区精华液| 在线欧美一区二区| 欧美视频一二三区| 欧美一区二区三区在线观看| 欧美日韩三级在线| 91精品国产综合久久久久| 欧美一区二区三区成人| 久久综合久色欧美综合狠狠| 国产欧美日韩三区| 国产精品传媒视频| 亚洲国产精品欧美一二99 | 这里只有精品电影| 日韩午夜av电影| 久久久久国产免费免费| 欧美国产综合一区二区| 亚洲精选视频免费看| 午夜婷婷国产麻豆精品| 秋霞电影一区二区| 国产精品一卡二卡在线观看| 粉嫩绯色av一区二区在线观看 | 成人丝袜高跟foot| 成人免费看片app下载| av成人老司机| 欧美男女性生活在线直播观看| 北岛玲一区二区三区四区| 色婷婷综合久久久久中文一区二区| 国内精品久久久久影院色| av午夜一区麻豆| 日韩一级视频免费观看在线| 中文天堂在线一区| 午夜久久久影院| 久久狠狠亚洲综合| 日本韩国精品在线| 久久综合九色综合欧美98| 中文字幕视频一区| 毛片av一区二区| 一本色道综合亚洲| 精品粉嫩aⅴ一区二区三区四区| 欧美疯狂做受xxxx富婆| 久久精品这里都是精品| 亚洲国产欧美在线人成| 国产一区二区三区视频在线播放 | 婷婷夜色潮精品综合在线| 国产精品1区2区3区在线观看| 裸体健美xxxx欧美裸体表演| yourporn久久国产精品| 欧美精品久久99| 国产精品天美传媒沈樵| 日本少妇一区二区| 色久优优欧美色久优优| 久久亚洲精品国产精品紫薇| 亚洲第一搞黄网站| 成人黄页毛片网站| 亚洲黄色性网站| 国产盗摄精品一区二区三区在线 | 麻豆国产欧美一区二区三区| 99精品视频在线免费观看| 日韩一区二区三区四区| 亚洲夂夂婷婷色拍ww47| 成人精品一区二区三区四区 | 国内成人精品2018免费看| 一本一道久久a久久精品综合蜜臀| 91福利在线看| 亚洲色图在线播放| 国产精品99久久久久久似苏梦涵| 国产剧情一区二区| 日韩一区二区三区在线视频| 午夜电影网亚洲视频| 欧美日韩一区二区三区免费看| 在线播放欧美女士性生活| 一区二区在线观看视频| 91丨九色丨蝌蚪丨老版| 1024成人网| 91猫先生在线| 亚洲综合在线五月| 欧美亚州韩日在线看免费版国语版| 欧美丰满高潮xxxx喷水动漫| 亚洲成人免费看| 91精品国产综合久久精品app|