Class AbstractJythonMap

java.lang.Object
org.python.core.PyObject
com.inductiveautomation.ignition.common.script.abc.AbstractJythonMap
All Implemented Interfaces:
JythonMap, Serializable
Direct Known Subclasses:
AbstractMutableJythonMap, DotReferenceJythonMap

public abstract class AbstractJythonMap extends org.python.core.PyObject implements JythonMap
Base class to pretend to be a Python map, AKA a dictionary. Easier to subclass than the stuff in Jython's internals - you don't have to expose your own concurrent map, for instance. If you don't want to implement a method, leave it a no-op but add PyIgnoreMethodTag to the throws declaration, which will prevent it from being exposed to Jython.
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.python.core.PyObject

    org.python.core.PyObject.ConversionException
  • Field Summary

    Fields inherited from class org.python.core.PyObject

    attributes, gcMonitorGlobal, objtype, TYPE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.python.core.PyObject
    __finditem__(int key)
    Look up and return the specified key.
    org.python.core.PyObject
    __finditem__(org.python.core.PyObject pyKey)
    Look up and return the specified key.
    org.python.core.PyObject
    Returns an iterator over this mapping.
    org.python.core.PyString
     
    org.python.core.PyString
     
    org.python.core.PyObject
    get(org.python.core.PyObject pyKey)
    Get the value for the specified key, or PyNone if there was no result.
    boolean
    has_key(org.python.core.PyObject pyKey)
     
    boolean
     
    boolean
     
    boolean
     
    org.python.core.PyObject
     
    org.python.core.PyObject
     
    org.python.core.PyObject
     
     

    Methods inherited from class org.python.core.PyObject

    __abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __ensure_finalizer__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __float__, __floordiv__, __format__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iternext__, __itruediv__, __ixor__, __le__, __len__, __long__, __lshift__, __lt__, __mod__, __mul__, __ne__, __neg__, __nonzero__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rawdir__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __sub__, __tojava__, __truediv__, __trunc__, __unicode__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _unsupportedop, _xor, adaptToCoerceTuple, asDouble, asIndex, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, bit_length, conjugate, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, finalize, getDict, getJavaProxy, getType, hashCode, impAttr, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, mergeClassDict, mergeDictAttr, mergeListAttr, noAttributeError, object___subclasshook__, readonlyAttributeError, runsupportedopMessage, setDict, setType, unsupportedopMessage

    Methods inherited from class java.lang.Object

    clone, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.inductiveautomation.ignition.common.script.abc.JythonMap

    __contains__, __finditem__, __len__, get, items, keys, values
  • Constructor Details

    • AbstractJythonMap

      public AbstractJythonMap()
  • Method Details

    • iterkeys

      public org.python.core.PyObject iterkeys()
      Specified by:
      iterkeys in interface JythonMap
      Returns:
      an Iterable of keys; see Java2PyIterator
    • __iter__

      public org.python.core.PyObject __iter__()
      Description copied from interface: JythonMap
      Returns an iterator over this mapping. For 'dictionary' like classes, should just be the keys.
      Specified by:
      __iter__ in interface JythonMap
      Overrides:
      __iter__ in class org.python.core.PyObject
    • itervalues

      public org.python.core.PyObject itervalues()
      Specified by:
      itervalues in interface JythonMap
      Returns:
      an Iterable of values; see Java2PyIterator
    • iteritems

      public org.python.core.PyObject iteritems()
      Specified by:
      iteritems in interface JythonMap
      Returns:
      an Iterable of items; see Java2PyIterator
    • has_key

      public boolean has_key(org.python.core.PyObject pyKey)
      Specified by:
      has_key in interface JythonMap
      Returns:
      true if the underlying map has the requisite key. Usage is generally discouraged - the Pythonic approach is to use key in mapping.
    • get

      public org.python.core.PyObject get(org.python.core.PyObject pyKey)
      Description copied from interface: JythonMap
      Get the value for the specified key, or PyNone if there was no result. Should not throw an exception.
      Specified by:
      get in interface JythonMap
      Parameters:
      pyKey - The key, which may be a string (PyObject.asString() or a numeric index (PyObject.asInt()
    • __finditem__

      public org.python.core.PyObject __finditem__(org.python.core.PyObject pyKey) throws org.python.core.PyException
      Description copied from interface: JythonMap
      Look up and return the specified key.
      Specified by:
      __finditem__ in interface JythonMap
      Overrides:
      __finditem__ in class org.python.core.PyObject
      Throws:
      org.python.core.PyException
    • __finditem__

      public org.python.core.PyObject __finditem__(int key) throws org.python.core.PyException
      Description copied from interface: JythonMap
      Look up and return the specified key.
      Specified by:
      __finditem__ in interface JythonMap
      Overrides:
      __finditem__ in class org.python.core.PyObject
      Throws:
      org.python.core.PyException
    • isMappingType

      public boolean isMappingType() throws org.python.core.PyIgnoreMethodTag
      Overrides:
      isMappingType in class org.python.core.PyObject
      Throws:
      org.python.core.PyIgnoreMethodTag
    • isSequenceType

      public boolean isSequenceType() throws org.python.core.PyIgnoreMethodTag
      Overrides:
      isSequenceType in class org.python.core.PyObject
      Throws:
      org.python.core.PyIgnoreMethodTag
    • isNumberType

      public boolean isNumberType() throws org.python.core.PyIgnoreMethodTag
      Overrides:
      isNumberType in class org.python.core.PyObject
      Throws:
      org.python.core.PyIgnoreMethodTag
    • __repr__

      public org.python.core.PyString __repr__()
      Overrides:
      __repr__ in class org.python.core.PyObject
    • __str__

      public org.python.core.PyString __str__()
      Overrides:
      __str__ in class org.python.core.PyObject
    • toString

      public String toString() throws org.python.core.PyIgnoreMethodTag
      Specified by:
      toString in interface JythonMap
      Overrides:
      toString in class org.python.core.PyObject
      Returns:
      a string containing a printable representation of this object. If practical, should match the evaluation format of a Python dictionary - {"key": 123, "key_2": "value"}
      Throws:
      org.python.core.PyIgnoreMethodTag