Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.drools.definition.type
Interface FactType

All Superinterfaces:
  Externalizable, Serializable

    public interface FactType

extends Externalizable

FactType declarations are fact definitions (like classes) that are managed alongside the rules. You then communicate with the rulebase/knowledge base by using instances created by this. There are utility set and get methods on this, as well as in the FactFields. The Object that is used is a javabean (which was generated by the engine). You can also use reflection on it as normal.

Method Summary
`Object` | `get(Object bean, String field)` Gets the value of the specified field on the dynamic fact.
`Map<String,Object>` | `getAsMap(Object bean)` Get a map of the fields and their values for the bean.
`Class<?>` | `getFactClass()` Returns the Class
`FactField` | `getField(String name)` Returns the FactField identified by the given name.
`List<FactField>` | `getFields()` Returns the list of FactField in this FactType
`String` | `getName()` Returns the name of the FactType.
`Object` | `newInstance()` Create a new fact based on the declared fact type.
`void` | `set(Object bean, String field, Object value)` Sets the value of the field on a fact.
`void` | `setFromMap(Object bean, Map<String,Object> values)` Sets the values of the bean from a map.

Methods inherited from interface java.io.Externalizable
`readExternal, writeExternal`

Method Detail

### getName

    String getName()

  Returns the name of the FactType.

  Returns:
    the name of the fact type.

### getFields

    List<FactField> getFields()

  Returns the list of FactField in this FactType

  Returns:
    the list of the fields in this FactType

### getField

    FactField getField(String name)

  Returns the FactField identified by the given name.

  Parameters:
    `name` - the name of the FactField
  Returns:
    the FactField instance identified by the given name or null if none is found.

### getFactClass

    Class<?> getFactClass()

  Returns the Class for this FactType. The class object can be used through reflection.

  Returns:
    the generated class for this FactType

### newInstance

    Object newInstance()
                       throws InstantiationException,
                              IllegalAccessException

  Create a new fact based on the declared fact type. This object will usually be a javabean.

  Throws:
    `InstantiationException`
    `IllegalAccessException`

### set

    void set(Object bean,
             String field,
             Object value)

  Sets the value of the field on a fact.

  Parameters:
    `bean` - the object on which the field will be set.
    `field` - the name of the field to set.
    `value` - the value to be set on the field.

### get

    Object get(Object bean,
               String field)

  Gets the value of the specified field on the dynamic fact.

  Parameters:
    `bean` - the fact to read the field value from.
    `field` - the name of the field to read.
  Returns:
    the value of the field read from the fact

### getAsMap

    Map<String,Object> getAsMap(Object bean)

  Get a map of the fields and their values for the bean.

  Parameters:
    `the` - bean to read the fields from.
  Returns:
    a map of field names and corresponding values on the bean.

### setFromMap

    void setFromMap(Object bean,
                    Map<String,Object> values)

  Sets the values of the bean from a map.

  Parameters:
    `bean` - the fact to set the values of the fields on
    `values` - a map of field names and values to set

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2011 JBoss Inc.. All Rights Reserved.