Package abstrasy.externals

Source Code of abstrasy.externals.OptAccessList

package abstrasy.externals;


import abstrasy.Node;

import abstrasy.interpreter.InterpreterException;
import abstrasy.interpreter.StdErrors;

import java.util.ArrayList;

/**
* Abstrasy Interpreter
*
* Copyright : Copyright (c) 2006-2012, Luc Bruninx.
*
* Concédée sous licence EUPL, version 1.1 uniquement (la «Licence»).
*
* Vous ne pouvez utiliser la présente oeuvre que conformément à la Licence.
* Vous pouvez obtenir une copie de la Licence à l’adresse suivante:
*
*   http://www.osor.eu/eupl
*
* Sauf obligation légale ou contractuelle écrite, le logiciel distribué sous
* la Licence est distribué "en l’état", SANS GARANTIES OU CONDITIONS QUELLES
* QU’ELLES SOIENT, expresses ou implicites.
*
* Consultez la Licence pour les autorisations et les restrictions
* linguistiques spécifiques relevant de la Licence.
*
*
* @author Luc Bruninx
* @version 1.0
*/

public class OptAccessList {

    private ArrayList<OptAccess> oalist = new ArrayList<OptAccess>();
   
    public OptAccessList() { }
   
    public OptAccessList(OptAccess ... oas) {
        for(int i=0;i<oas.length;i++)
            oalist.add(oas[i]);
    }
   
    public OptAccessList(OptAccessList oas) {
        for(int i=0;i<oas.size();i++)
            oalist.add(oas.get(i));
    }
   
    public int size(){
        return oalist.size();
    }
   
    public void add(OptAccess oa){
        oalist.add(oa);
    }
   
    public void set(OptAccess oa){
        for(int i=0;i<oalist.size();i++)
            if(oalist.get(i).equals(oa.getKey())){
                oalist.set(i, oa);
                return;
            }
        oalist.add(oa);
    }
   
    public OptAccess get(int i){
        return oalist.get(i);
    }
   
    public boolean exists(String id) {
        for (int i = 0; i < oalist.size(); i++)
            if (oalist.get(i).equals(id))
                return true;
        return false;
    }
   
    public Node get(String id) throws Exception {
        for (int i = 0; i < oalist.size(); i++)
            if (oalist.get(i).equals(id))
                return oalist.get(i).getNode();
        throw new InterpreterException(StdErrors.extend(StdErrors.Key_not_found,"\'"+id));
    }
   
    public void set(String id,Node value) throws Exception {
        for (int i = 0; i < oalist.size(); i++)
            if (oalist.get(i).equals(id)){
                oalist.get(i).setNode(value);
                return;
            }
        throw new InterpreterException(StdErrors.extend(StdErrors.Key_not_found,"\'"+id));
    }

}
TOP

Related Classes of abstrasy.externals.OptAccessList

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.