Package anvil.script

Source Code of anvil.script.NamespaceImpl

/*
* $Id: NamespaceImpl.java,v 1.14 2002/09/16 08:05:03 jkl Exp $
*
* Copyright (c) 2002 Njet Communications Ltd. All Rights Reserved.
*
* Use is subject to license terms, as defined in
* Anvil Sofware License, Version 1.1. See LICENSE
* file, or http://njet.org/license-1.1.txt
*/
package anvil.script;

import anvil.java.util.BindingEnumeration;
import anvil.core.Any;
import anvil.core.runtime.AnyFunction;
import anvil.java.util.Hashlist;

/**
* class NamespaceImpl
*
* @author: Jani Lehtim�ki
*/
public class NamespaceImpl implements Namespace
{

  private Hashlist _namespace = new Hashlist();
 

  public NamespaceImpl()
  {
  }


  public NamespaceImpl(Hashlist variables)
  {
    _namespace = variables;
  }


  public void destroy()
  {
    _namespace.clear();
    _namespace = null;
  }
 

  public String getName()
  {
    return "<unnamed>";
  }


  public BindingEnumeration getVariables()
  {
    return _namespace.keysAndElements();
  }
 

  public Any getVariable(String name)
  {
    Any value = (Any)_namespace.get(name);
    return (value != null) ? value : Any.UNDEFINED;
  }


  public Any setVariable(String name, Any value)
  {
    _namespace.put(name, value);
    return value;
  }


  public Any checkVariable(String name)
  {
    Any value = (Any)_namespace.get(name);
    if (value != null) {
      return value;
    } else {
      return Any.UNDEFINED;
    }
  }


  public boolean deleteVariable(String name)
  {
    return (_namespace.remove(name) != null);
  }


}
TOP

Related Classes of anvil.script.NamespaceImpl

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.