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

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

?? launchpermission.java

?? 日常的辦公系統 應用工作流框架等增加員工的基本信息、培訓信息、獎罰信息、薪資信息
?? JAVA
字號:
/* * Copyright (c) 2005, John Mettraux, OpenWFE.org * All rights reserved. *  * Redistribution and use in source and binary forms, with or without  * modification, are permitted provided that the following conditions are met: *  * . Redistributions of source code must retain the above copyright notice, this *   list of conditions and the following disclaimer.   *  * . Redistributions in binary form must reproduce the above copyright notice,  *   this list of conditions and the following disclaimer in the documentation  *   and/or other materials provided with the distribution. *  * . Neither the name of the "OpenWFE" nor the names of its contributors may be *   used to endorse or promote products derived from this software without *   specific prior written permission. *  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE  * POSSIBILITY OF SUCH DAMAGE. * * $Id: LaunchPermission.java,v 1.22 2005/05/17 16:41:03 jmettraux Exp $ *///// LaunchPermission.java//// jmettraux@openwfe.org//// generated with // jtmpl 1.0.04 31.10.2002 John Mettraux (jmettraux@openwfe.org)//package openwfe.org.worklist.auth;import java.security.PermissionCollection;import openwfe.org.xml.XmlUtils;import openwfe.org.auth.Permission;/** * A permission for a workitem store * * <p><font size=2>CVS Info : * <br>$Author: jmettraux $ * <br>$Date: 2005/05/17 16:41:03 $ * <br>$Id: LaunchPermission.java,v 1.22 2005/05/17 16:41:03 jmettraux Exp $ </font> * * @author jmettraux@openwfe.org */public class LaunchPermission    extends Permission{    private final static org.apache.log4j.Logger log =        org.apache.log4j.Logger.getLogger(LaunchPermission.class.getName());    //    // CONSTANTS (definitions)    public final static String LAUNCH_ACTIONS         = "launch";    private final static String LAUNCHITEM = "launchitem";    //private final static String FLOWDEF = "workflow-definition";    private final static String FLOWS = "flows";    private final static String FLOW = "flow";    //    // FIELDS    protected String engineId = null;    protected String flowUrl = null;    //    // CONSTRUCTORS    public LaunchPermission (final java.util.Map params)    {        super(params);        splitName((String)params.get(NAME));    }    public static LaunchPermission newLaunchPermission (final String name)    {        final java.util.Map params = new java.util.HashMap(1);        params.put(NAME, name);        return new LaunchPermission(params);    }    protected void splitName (String s)    {        String[] ss = s.split("::");        if (ss.length < 2)        {            splitName(".*::"+s);            return;        }        this.engineId = ss[0];        this.flowUrl = ss[1];        log.debug("splitName()  '"+this.engineId+"' :: '"+this.flowUrl+"'");    }    //    // METHODS        public String getEngineId () { return this.engineId; }    public String getUrl () { return this.flowUrl; }    /**     * Returns all the url concerned by this launchPermission.      * If the permission points to a list of flow, their URLs     * are all returned.     * The result is not cached, so you can drop in new flowdefs or flowlists      * and they will be seen.     */    public java.util.List resolveUrl ()    {        java.util.ArrayList result = new java.util.ArrayList();        resolveUrl(result, this.flowUrl);        return result;    }    /**     * The workhorse of the previous method.     * Url pointing to list of urls that point to list of urls... are     * possible, this method is recursive.     */    protected void resolveUrl (final java.util.List result, final String url)    {        //        // is it a regexp ?        if (url.endsWith("*"))        {            result.add(url);            return;        }        //        // not a regexp/glob...        org.jdom.Element docRootElement = null;        try        {            docRootElement = XmlUtils.extractXml(new java.net.URL(url), false);        }        catch (final Throwable t)        {            //log.warn("Couldn't parse document "+url, t);            log.warn("Couldn't parse document "+url+" because of "+t);            return;        }        if (docRootElement.getName().equals(FLOWS))        {            java.util.Iterator it = docRootElement.getChildren(FLOW).iterator();            while (it.hasNext())            {                org.jdom.Element elt = (org.jdom.Element)it.next();                String childUrl = elt.getTextTrim();                 resolveUrl(result, childUrl);                    // this can get recursive...            }            return;        }        result.add(url);    }    /*     * A less static replacement has to be found... Expression Map      * where are you ?     *     * (moved out : was too static)     * /    private boolean isFlowDefinition (final org.jdom.Element rootElement)    {        final String name = rootElement.getName();        return             (name.equals("define") ||             name.equals("process-definition") ||             name.equals("workflow-definition"));    }     */    //    // METHODS from Permission    public String getActions ()    {        return LAUNCH_ACTIONS;    }    public int hashCode ()    {        return this.getName().hashCode();    }    public boolean equals (Object o)    {        if (o == null || ! (o instanceof LaunchPermission)) return false;        LaunchPermission other = (LaunchPermission)o;        return             (getName().equals(other.getName()));    }    public boolean implies (final java.security.Permission p)    {        if (p == null || ! (p instanceof LaunchPermission)) return false;        //log.debug("implies() does "+this+" imply "+p+" ?");                LaunchPermission lp = (LaunchPermission)p;        //        // engine implies        //if ( ! this.engineId.equals("*"))        //{        //    if ( ! this.engineId.equals(lp.engineId)) return false;        //}        if ( ! lp.engineId.matches(this.engineId)) return false;        //        // flow implies        if (this.flowUrl.equals(".*")) return true;        java.util.Iterator it = lp.resolveUrl().iterator();        while (it.hasNext())        {            String url = (String)it.next();            if (matches(this.resolveUrl(), url)) return true;        }        //log.debug("implies() returning false");        return false;    }    /*     * Returns true as soon as one of the authorized urls matches the given     * url.     */    private boolean matches         (final java.util.List authorizedUrls, final String url)    {        final java.util.Iterator it = authorizedUrls.iterator();        while (it.hasNext())        {            final String aUrl = (String)it.next();            //log.debug("matches() does \""+url+"\" match \""+aUrl+"\" ?");            if (url.matches(aUrl)) return true;        }        //log.debug("matches() returning false");        return false;    }    public PermissionCollection newPermissionCollection ()    {        return new LaunchPermissionCollection();    }    public String toString ()    {        StringBuffer sb = new StringBuffer();        sb.append("[LaunchPermission \n  name=\"");        sb.append(getName());        sb.append("\" \n/]");        return sb.toString();    }    //    // some static METHODS    /*    public static void main (String[] args)    {        String n1 = args[0];        String n2 = args[1];        boolean b = namesMatch(n1, n2);        System.out.println("'"+n1+"' matches '"+n2+"' -> "+b);    }    */}//// ANOTHER CLASS//// LaunchPermissionCollection.java//// jmettraux@openwfe.org//// generated with // jtmpl 1.0.04 31.10.2002 John Mettraux (jmettraux@openwfe.org)///** * no comment * * <p><font size=2>CVS Info : * <br>$Author: jmettraux $ * <br>$Date: 2005/05/17 16:41:03 $ * <br>$Id: LaunchPermission.java,v 1.22 2005/05/17 16:41:03 jmettraux Exp $ </font> * * @author jmettraux@openwfe.org */final class LaunchPermissionCollection    extends PermissionCollection    implements java.io.Serializable{    private final static org.apache.log4j.Logger log = org.apache.log4j.Logger        .getLogger(LaunchPermissionCollection.class.getName());    //    // FIELDS    private java.util.Vector permissions = new java.util.Vector();    //    // CONSTRUCTORS    //    // METHODS    public void add (java.security.Permission p)    {        if (p == null || ! (p instanceof LaunchPermission))        {            throw new IllegalArgumentException                ("null permission or permission not of class '"+                 LaunchPermission.class.getName()+"'");        }        if (isReadOnly())        {            throw new SecurityException                ("attempt to add a Permission to a readonly "+                 "PermissionCollection");        }        permissions.add(p);    }    public boolean implies (java.security.Permission p)    {        if (p == null || ! (p instanceof LaunchPermission)) return false;        LaunchPermission lp = (LaunchPermission)p;        java.util.Enumeration en = elements();        while(en.hasMoreElements())        {            LaunchPermission elp = (LaunchPermission)en.nextElement();            //log.debug("does "+elp+" implies "+p+" ?");            if (elp.implies(p)) return true;        }        return false;    }    public java.util.Enumeration elements ()    {        return permissions.elements();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人av电影在线| 精品国产百合女同互慰| 日韩精品一区二区三区在线播放| 国产欧美日韩中文久久| 亚洲福利国产精品| 成人教育av在线| 欧美白人最猛性xxxxx69交| 亚洲四区在线观看| 国产河南妇女毛片精品久久久| 欧美精品高清视频| 伊人开心综合网| 成人app网站| 久久久久97国产精华液好用吗| 亚洲福中文字幕伊人影院| 成人黄色a**站在线观看| 精品国产人成亚洲区| 五月天视频一区| 欧美性大战xxxxx久久久| 亚洲品质自拍视频| av成人免费在线| 国产蜜臀97一区二区三区| 久久丁香综合五月国产三级网站 | 亚洲综合在线免费观看| 国产成人av一区二区三区在线观看| 69堂亚洲精品首页| 三级亚洲高清视频| 欧美日韩久久不卡| 亚洲一区二区三区视频在线| 一本一道久久a久久精品| 亚洲欧洲精品一区二区精品久久久| 国产成人鲁色资源国产91色综 | 丝袜美腿高跟呻吟高潮一区| 欧洲精品一区二区| 亚洲伦理在线精品| 在线亚洲免费视频| 亚洲影视在线观看| 欧美福利一区二区| 麻豆freexxxx性91精品| 欧美第一区第二区| 国产一区高清在线| 国产精品沙发午睡系列990531| 国产成人精品三级麻豆| 国产精品系列在线| 91麻豆国产福利在线观看| 亚洲视频一区在线观看| 一本大道久久精品懂色aⅴ| 亚洲激情自拍偷拍| 欧美日韩国产经典色站一区二区三区| 亚洲第一主播视频| 精品乱人伦一区二区三区| 国产精一区二区三区| 亚洲视频资源在线| 欧美日韩不卡一区二区| 国内外成人在线| 国产精品久久国产精麻豆99网站| 欧洲在线/亚洲| 久久97超碰色| 一区免费观看视频| 日韩视频免费直播| 大白屁股一区二区视频| 一区二区三区成人| 欧美www视频| av在线不卡免费看| 午夜欧美电影在线观看| 国产亚洲精品aa| 色噜噜狠狠一区二区三区果冻| 日本中文在线一区| 国产拍欧美日韩视频二区| 在线亚洲一区观看| 另类人妖一区二区av| 国产精品传媒在线| 欧美一区二区久久久| 波多野洁衣一区| 蜜桃视频在线一区| 亚洲精品免费电影| 久久精品视频免费| 欧美久久一二区| 99视频精品全部免费在线| 蜜臀久久99精品久久久久久9| 国产精品家庭影院| 欧美精品一区二区不卡 | 夜夜操天天操亚洲| 久久综合狠狠综合久久综合88| 日本久久精品电影| 国产99久久久精品| 老司机精品视频一区二区三区| 亚洲欧美激情插| 国产亚洲成av人在线观看导航| 欧美综合天天夜夜久久| 成人午夜伦理影院| 久久99久久精品欧美| 亚洲一区二区av在线| 亚洲国产成人在线| 久久综合久色欧美综合狠狠| 欧美日韩亚洲综合一区二区三区| www.66久久| 国产夫妻精品视频| 精品一区二区日韩| 免费观看久久久4p| 亚洲18女电影在线观看| 亚洲在线观看免费| 亚洲人成精品久久久久| 国产精品不卡在线| 国产精品色呦呦| 欧美国产精品中文字幕| 国产亚洲欧美一区在线观看| 日韩欧美在线网站| 欧美一区二区福利视频| 欧美麻豆精品久久久久久| 在线观看免费视频综合| 在线观看网站黄不卡| 在线免费观看不卡av| 91在线国产福利| 91色porny蝌蚪| 91久久精品一区二区| 欧美性受xxxx黑人xyx| 欧美怡红院视频| 欧美日韩免费视频| 91精品国产入口| 精品国内片67194| 精品福利av导航| 国产午夜精品久久久久久久 | 国产呦精品一区二区三区网站| 蜜桃一区二区三区在线观看| 久久99精品一区二区三区三区| 美国欧美日韩国产在线播放| 九九精品一区二区| 国产精品一区在线观看你懂的| 国产精品亚洲一区二区三区在线| 国产高清亚洲一区| 不卡av电影在线播放| 91原创在线视频| 欧美日韩一二三区| 精品国产免费久久| 国产精品久久久久久久久免费相片| 国产精品福利av| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲va欧美va国产va天堂影院| 美女网站视频久久| 高清国产一区二区| 91久久精品日日躁夜夜躁欧美| 555夜色666亚洲国产免| 欧美不卡激情三级在线观看| 国产精品国产精品国产专区不片| 中文字幕中文字幕一区| 香蕉成人伊视频在线观看| 久久99久久精品| 91丝袜国产在线播放| 69p69国产精品| 欧美国产1区2区| 亚洲成人激情自拍| 国产精品亚洲人在线观看| 色又黄又爽网站www久久| 日韩欧美美女一区二区三区| 国产欧美日韩在线视频| 亚洲成人在线免费| 成人中文字幕在线| 欧美人妖巨大在线| 中文字幕欧美区| 天天综合日日夜夜精品| 成人一区二区三区视频在线观看| 欧美三级日韩在线| 国产嫩草影院久久久久| 美洲天堂一区二卡三卡四卡视频| 成人性生交大合| 欧美一区二区三区小说| 国产精品婷婷午夜在线观看| 日本不卡在线视频| 91麻豆精品秘密| 久久亚洲二区三区| 水蜜桃久久夜色精品一区的特点| 丁香天五香天堂综合| 欧美一级片在线看| 亚洲综合无码一区二区| 处破女av一区二区| 日韩精品一区二区三区蜜臀| 亚洲成人激情av| 99久久精品一区| 欧美国产1区2区| 国产一区二区三区蝌蚪| 欧美一区二区日韩| 肉色丝袜一区二区| 91国产精品成人| 国产精品不卡一区| 成人精品国产免费网站| 亚洲精品在线网站| 青青草国产精品97视觉盛宴| 在线观看欧美精品| 一区二区三区在线观看网站| eeuss鲁片一区二区三区在线看| 欧美成人综合网站| 蜜桃av一区二区三区电影| 欧美日韩精品久久久| 亚洲一区二区三区小说| 色美美综合视频| 亚洲综合成人在线| 色丁香久综合在线久综合在线观看| 国产精品福利一区二区| 成人av在线播放网址| 国产精品乱码一区二区三区软件|