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

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

?? packagepermission.java

?? OSGI 的 源碼實現,采用JAVA書寫
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
            {                sb.append(EXPORT);                comma = true;            }            if ((action_mask & ACTION_IMPORT) == ACTION_IMPORT)            {                if (comma) sb.append(',');                sb.append(IMPORT);            }            actions = sb.toString();        }        return(actions);    }    /**     * Returns a new <tt>PermissionCollection</tt> object suitable for storing     * <tt>PackagePermission</tt> objects.     *     * @return A new <tt>PermissionCollection</tt> object.     */    public PermissionCollection newPermissionCollection()    {        return(new PackagePermissionCollection());    }    /**     * Determines the equality of two <tt>PackagePermission</tt> objects.     *     * This method checks that specified package has the same package name     * and <tt>PackagePermission</tt> actions as this <tt>PackagePermission</tt> object.     *     * @param obj The object to test for equality with this <tt>PackagePermission</tt> object.     * @return <tt>true</tt> if <tt>obj</tt> is a <tt>PackagePermission</tt>, and has the     * same package name and actions as this <tt>PackagePermission</tt> object; <tt>false</tt> otherwise.     */    public boolean equals(Object obj)    {        if (obj == this)        {            return(true);        }        if (!(obj instanceof PackagePermission))        {            return(false);        }        PackagePermission p = (PackagePermission) obj;        return((action_mask == p.action_mask) &&               getName().equals(p.getName()));    }    /**     * Returns the hash code value for this object.     *     * @return A hash code value for this object.     */    public int hashCode()    {        return(getName().hashCode() ^ getActions().hashCode());    }    /**     * Returns the current action mask.     * <p>Used by the PackagePermissionCollection class.     *     * @return Current action mask.     */    int getMask()    {        return(action_mask);    }    /**     * WriteObject is called to save the state of the <tt>ServicePermission</tt>     * object to a stream. The actions are serialized, and the superclass     * takes care of the name.     */    private synchronized void writeObject(java.io.ObjectOutputStream s)    throws IOException    {        // Write out the actions. The superclass takes care of the name        // call getActions to make sure actions field is initialized        if (actions == null)            getActions();        s.defaultWriteObject();    }    /**     * readObject is called to restore the state of the ServicePermission from     * a stream.     */    private synchronized void readObject(java.io.ObjectInputStream s)    throws IOException, ClassNotFoundException    {        // Read in the action, then initialize the rest        s.defaultReadObject();        init(getMask(actions));    }}/** * Stores a set of <tt>PackagePermission</tt> permissions. * * @see java.security.Permission * @see java.security.Permissions * @see java.security.PermissionCollection */final class PackagePermissionCollection extends PermissionCollection{    /**     * Table of permissions.     *     * @serial     */    private Hashtable permissions;    /**     * Boolean saying if "*" is in the collection.     *     * @serial     */    private boolean all_allowed;    /**     * Create an empty PackagePermissions object.     *     */    public PackagePermissionCollection()    {        permissions = new Hashtable();        all_allowed = false;    }    /**     * Adds a permission to the <tt>PackagePermission</tt> objects. The key for the hash is     * the name.     *     * @param permission The <tt>PackagePermission</tt> object to add.     *     * @exception IllegalArgumentException If the permission is not a     * <tt>PackagePermission</tt> instance.     *     * @exception SecurityException If this <tt>PackagePermissionCollection</tt>     * object has been marked read-only.     */    public void add(Permission permission)    {        if (! (permission instanceof PackagePermission))            throw new IllegalArgumentException("invalid permission: "+                                               permission);        if (isReadOnly())            throw new SecurityException("attempt to add a Permission to a " +                                        "readonly PermissionCollection");        PackagePermission pp = (PackagePermission) permission;        String name = pp.getName();        PackagePermission existing =        (PackagePermission) permissions.get(name);        if (existing != null)        {            int oldMask = existing.getMask();            int newMask = pp.getMask();            if (oldMask != newMask)            {                permissions.put(name,                                new PackagePermission(name,                                                      oldMask | newMask));            }        }        else        {            permissions.put(name, permission);        }        if (!all_allowed)        {            if (name.equals("*"))                all_allowed = true;        }    }    /**     * Determines if the specified permissions implies the permissions     * expressed in <tt>permission</tt>.     *     * @param p The Permission object to compare with this <tt>PackagePermission</tt> object.     *     * @return <tt>true</tt> if <tt>permission</tt> is a proper subset of a permission in     * the set; <tt>false</tt> otherwise.     */    public boolean implies(Permission permission)    {        if (!(permission instanceof PackagePermission))            return(false);        PackagePermission pp = (PackagePermission) permission;        PackagePermission x;        int desired = pp.getMask();        int effective = 0;        // short circuit if the "*" Permission was added        if (all_allowed)        {            x = (PackagePermission) permissions.get("*");            if (x != null)            {                effective |= x.getMask();                if ((effective & desired) == desired)                    return(true);            }        }        // strategy:        // Check for full match first. Then work our way up the        // name looking for matches on a.b.*        String name = pp.getName();        x = (PackagePermission) permissions.get(name);        if (x != null)        {            // we have a direct hit!            effective |= x.getMask();            if ((effective & desired) == desired)                return(true);        }        // work our way up the tree...        int last, offset;        offset = name.length()-1;        while ((last = name.lastIndexOf(".", offset)) != -1)        {            name = name.substring(0, last+1) + "*";            x = (PackagePermission) permissions.get(name);            if (x != null)            {                effective |= x.getMask();                if ((effective & desired) == desired)                    return(true);            }            offset = last -1;        }        // we don't have to check for "*" as it was already checked        // at the top (all_allowed), so we just return false        return(false);    }    /**     * Returns an enumeration of all <tt>PackagePermission</tt> objects in the     * container.     *     * @return Enumeration of all <tt>PackagePermission</tt> objects.     */    public Enumeration elements()    {        return(permissions.elements());    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区三区四区| 91福利视频网站| 久久在线观看免费| 黑人巨大精品欧美黑白配亚洲| 欧美大片在线观看一区| 国产一区二区三区av电影| 国产日产亚洲精品系列| www.综合网.com| 亚洲国产精品视频| 欧美一区二区三区播放老司机| 久久精品国产精品亚洲红杏| 欧美精品一区二| 99久久精品99国产精品| 一个色妞综合视频在线观看| 欧美精品在欧美一区二区少妇| 日韩中文字幕1| 久久久久久夜精品精品免费| 成人av在线资源网| 亚洲国产成人av好男人在线观看| 欧美精品一卡两卡| 国产91精品精华液一区二区三区| 亚洲精品美国一| 91精品国产入口在线| 国产在线一区观看| 一区二区三区四区乱视频| 日韩一区二区三区观看| 国产成人av一区| 亚洲一区二区免费视频| 久久婷婷色综合| 91久久国产最好的精华液| 免费看日韩a级影片| 国产精品美女www爽爽爽| 91久久国产综合久久| 久久se这里有精品| 亚洲激情图片一区| 精品国一区二区三区| 94-欧美-setu| 久久99久久精品| 亚洲免费观看高清完整| 精品国产凹凸成av人网站| 色悠悠亚洲一区二区| 久久99久久久欧美国产| 一区二区三区成人| 久久综合久久久久88| 91美女在线看| 国产福利一区在线| 日韩电影在线一区| 亚洲色图清纯唯美| 国产亚洲欧美在线| 日韩一区二区电影| 欧美日韩在线精品一区二区三区激情| 国产一区二区美女| 免费成人av在线| 一区二区三区中文字幕在线观看| 久久只精品国产| 欧美日韩精品系列| 色哟哟精品一区| 国产成人精品在线看| 蜜臀91精品一区二区三区 | 国产欧美精品区一区二区三区 | 午夜国产不卡在线观看视频| 国产人成一区二区三区影院| 日韩欧美亚洲国产另类| 精品视频免费看| 97se狠狠狠综合亚洲狠狠| 国产一区二区三区四区五区美女 | 精品日韩一区二区三区 | 日韩综合一区二区| 亚洲精品国产a| 亚洲国产成人私人影院tom| 日韩一区二区三区在线观看| 欧美精品乱码久久久久久| 91麻豆国产精品久久| 丁香网亚洲国际| 国产成人免费视频网站高清观看视频| 麻豆国产91在线播放| 亚洲成a人在线观看| 亚洲一区在线观看免费观看电影高清 | 久久99精品国产| 日本中文一区二区三区| 亚洲成人第一页| 亚洲一区二区在线观看视频| 亚洲人成在线观看一区二区| 国产精品福利一区| 亚洲国产激情av| 中文字幕精品一区二区三区精品| 精品动漫一区二区三区在线观看| 日韩精品一区在线观看| 欧美大尺度电影在线| 久久影院视频免费| 久久久久高清精品| 欧美国产乱子伦| 亚洲天堂av老司机| 一区二区日韩av| 日韩经典一区二区| 九九热在线视频观看这里只有精品| 激情综合网激情| 国产一区二区三区国产| www.综合网.com| 色欧美片视频在线观看在线视频| 欧美综合一区二区三区| 在线不卡a资源高清| 日韩一二三区视频| 国产亚洲欧美日韩在线一区| 国产精品久久久久久亚洲毛片| 亚洲日本青草视频在线怡红院| 亚洲综合久久久| 蜜桃一区二区三区在线观看| 国产精品亚洲第一区在线暖暖韩国| 国产传媒一区在线| 一本到三区不卡视频| 日韩午夜激情免费电影| 国产亚洲综合在线| 亚洲色图欧美在线| 日韩精品免费专区| 国产成人免费在线| 欧美日韩一区二区在线观看 | 精品国产欧美一区二区| 日韩一区在线看| 男人的天堂久久精品| 国产 欧美在线| 欧美自拍偷拍午夜视频| 精品国产一区二区三区四区四| 国产精品网曝门| 天天综合日日夜夜精品| 粉嫩久久99精品久久久久久夜| 在线观看日韩国产| 久久久久99精品一区| 亚洲五月六月丁香激情| 国产一区视频在线看| 欧美视频中文字幕| 国产三区在线成人av| 婷婷成人激情在线网| 不卡的av在线| 欧美zozozo| 亚洲伊人色欲综合网| 粉嫩av亚洲一区二区图片| 69久久99精品久久久久婷婷| 国产日韩影视精品| 亚洲不卡一区二区三区| 国产成人av影院| 日韩精品一区二区三区在线播放| 最新热久久免费视频| 国产一区二区不卡在线| 欧美日韩亚洲丝袜制服| 国产精品美女久久久久av爽李琼| 日本va欧美va欧美va精品| 91麻豆产精品久久久久久| 久久综合九色综合欧美就去吻| 亚洲成人综合视频| 不卡的av中国片| 国产日韩欧美精品一区| 麻豆国产91在线播放| 欧美日韩大陆一区二区| 亚洲乱码一区二区三区在线观看| 国产高清不卡二三区| 精品国产伦理网| 免费在线观看日韩欧美| 欧美日韩精品免费观看视频| 一区二区不卡在线播放 | 国产suv精品一区二区三区 | 国产欧美一区二区精品性| 日韩不卡在线观看日韩不卡视频| 在线观看免费亚洲| 亚洲三级在线播放| 99精品视频一区| 国产精品久久久久久久久久免费看| 国产一区二区毛片| 国产亚洲成av人在线观看导航| 韩国三级中文字幕hd久久精品| 精品日韩99亚洲| 精品中文字幕一区二区小辣椒| 日韩欧美的一区| 国产美女一区二区| 国产日韩精品一区| 成人爽a毛片一区二区免费| 国产精品网站在线观看| 972aa.com艺术欧美| 亚洲欧美日韩精品久久久久| 色婷婷综合久久久久中文 | 69堂精品视频| 日韩综合在线视频| 日韩欧美卡一卡二| 国产一区二区三区在线观看精品| 久久欧美中文字幕| 国产91丝袜在线18| 国产精品卡一卡二| 日本久久电影网| 亚洲自拍偷拍网站| 欧美日韩精品一区视频| 日本亚洲三级在线| 久久综合九色综合欧美就去吻| 国产91在线|亚洲| 亚洲美女一区二区三区| 色婷婷综合久久久中文一区二区 | 精品剧情在线观看| 成人小视频在线观看| 亚洲精品日韩一| 91精品国产色综合久久不卡电影| 精品一区二区三区免费播放|