org.apache.felix.gogo.runtime

## Class Reflective

- java.lang.Object
- - org.apache.felix.gogo.runtime.Reflective

    public final class Reflective
    extends Object

### Field Summary

Fields
`static Set<String>` `KEYWORDS`
`static String` `MAIN`
`static Object` `NO_MATCH`

### Constructor Summary

Constructors
Constructor and Description
`Reflective()`

### Method Summary

All Methods Static Methods Concrete Methods
`static Object` `coerce(CommandSession session, Class<?> type, Object arg, int[] convert)` converts given argument to specified type and increments convert[0] if any conversion was needed.
`static Object` `invoke(CommandSession session, Object target, String name, List<Object> args)` invokes the named method on the given target using the supplied args, which are converted if necessary.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### NO_MATCH

    public static final Object NO_MATCH

#### MAIN

    public static final String MAIN

See Also:
  Constant Field Values

#### KEYWORDS

    public static final Set<String> KEYWORDS

### Constructor Detail

#### Reflective

    public Reflective()

### Method Detail

#### invoke

    public static Object invoke(CommandSession session,
                                Object target,
                                String name,
                                List<Object> args)
                         throws Exception

invokes the named method on the given target using the supplied args, which are converted if necessary.

Parameters:
  `session` - the session
  `target` - the target
  `name` - the name
  `args` - the args
Returns:
  the result of the invoked method
Throws:
  `Exception` - on exception

#### coerce

    public static Object coerce(CommandSession session,
                                Class<?> type,
                                Object arg,
                                int[] convert)

converts given argument to specified type and increments convert[0] if any conversion was needed.

Parameters:
  `session` - the session
  `type` - the type
  `arg` - the arg
  `convert` - convert[0] is incremented according to the conversion needed, to allow the "best" conversion to be determined.
Returns:
  converted arg or NO_MATCH if no conversion possible.