public Object call()

in src/main/java/org/apache/bsf/engines/jython/JythonEngine.java [50:81]


  public Object call (final Object object, final String method, final Object[] args)
      throws BSFException {
      try {
          PyObject[] pyargs = Py.EmptyObjects;

          if (args != null) {
              pyargs = new PyObject[args.length];
              for (int i = 0; i < pyargs.length; i++) {
                pyargs[i] = Py.java2py(args[i]);
            }
          }

          if (object != null) {
              final PyObject o = Py.java2py(object);
              return unwrap(o.invoke(method, pyargs));
          }

          PyObject m = interp.get(method);

          if (m == null) {
            m = interp.eval(method);
        }
          if (m != null) {
              return unwrap(m.__call__(pyargs));
          }

          return null;
      } catch (final PyException e) {
          throw new BSFException (BSFException.REASON_EXECUTION_ERROR,
                                  "exception from Jython:\n" + e, e);
      }
  }