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

## jpos.config
Interface JposEntry

All Superinterfaces:
  java.lang.Comparable, java.io.Serializable

All Known Implementing Classes:
  SimpleEntry

public interface JposEntry
extends java.io.Serializable, java.lang.Comparable

Defines the minimal set of methods for a JposEntry object It allows the entries to contain properties pairs The key being a String and the value any serializable Java objects NOTE: JposEntry implementation can be easily implemented using a java.util.Hashtable

Since:
  0.1 (Philly 99 meeting)
Author:
  E. Michael Maximilien (maxim@us.ibm.com)

Inner Class Summary
`static interface` | `JposEntry.Prop` Inner interface to represent a property of a JposEntry

Field Summary
`static java.lang.String` | `DEVICE_CATEGORY_PROP_NAME` The device category for the service must be one of JavaPOS defined categories i.e.
`static java.lang.String` | `JPOS_VERSION_PROP_NAME` The JavaPOS version supported by this service (i.e.
`static java.lang.String` | `LOGICAL_NAME_PROP_NAME` JposEntry property name that must be defined by all JposEntry objects used to create services
`static java.lang.String` | `PRODUCT_DESCRIPTION_PROP_NAME` A string description for this product
`static java.lang.String` | `PRODUCT_NAME_PROP_NAME` A short name for this product
`static java.lang.String` | `PRODUCT_URL_PROP_NAME` The product's URL string
`static java.lang.String` | `SERVICE_CLASS_PROP_NAME` JposEntry property name that specifies the fully qualified class name for the service
`static java.lang.String` | `SI_FACTORY_CLASS_PROP_NAME` JposEntry property name defining the JposServiceInstanceFactory class for this JposEntry
`static java.lang.String` | `VENDOR_NAME_PROP_NAME` The vendor name string
`static java.lang.String` | `VENDOR_URL_PROP_NAME` The vendor URL string

Method Summary
`void` | `add(JposEntry.Prop prop)` Adds a new property
`java.lang.Object` | `addProperty(java.lang.String propName, java.lang.Object propValue)` Adds a property to the JposEntry object.
`JposEntry.Prop` | `createProp(java.lang.String propName, java.lang.Object propValue, java.lang.Class propType)`
`boolean` | `equals(JposEntry otherEntry)`
`java.lang.String` | `getLogicalName()`
`JposEntry.Prop` | `getProp(java.lang.String propName)` Returns a JposEntry.Prop with name specified.
`int` | `getPropertyCount()`
`java.util.Enumeration` | `getPropertyNames()`
`java.lang.Class` | `getPropertyType(java.lang.String propName)`
`java.lang.Object` | `getPropertyValue(java.lang.String propName)`
`java.util.Iterator` | `getProps()` Returns an Iterator of JposEntry.Prop in this entry
`JposRegPopulator` | `getRegPopulator()`
`boolean` | `hasProp(JposEntry.Prop prop)`
`boolean` | `hasPropertyWithName(java.lang.String propName)`
`boolean` | `hasPropertyWithValue(java.lang.Object propValue)`
`void` | `modify(JposEntry.Prop prop)` Modifies the property with name of property passed with the new value if that property currently exist in the entry otherwise does nothing
`java.lang.Object` | `modifyPropertyValue(java.lang.String propName, java.lang.Object propValue)` Modifies the property value of the property passed
`void` | `remove(JposEntry.Prop prop)` Looks for a property with name specified and removes it.
`java.lang.Object` | `removeProperty(java.lang.String propName)` Looks for a property with name specified and removes it

Methods inherited from interface java.lang.Comparable
`compareTo`

Field Detail

### SI_FACTORY_CLASS_PROP_NAME

    public static final java.lang.String SI_FACTORY_CLASS_PROP_NAME

  JposEntry property name defining the JposServiceInstanceFactory class for this JposEntry
  Since:
    0.1 (Philly 99 meeting)

### LOGICAL_NAME_PROP_NAME

    public static final java.lang.String LOGICAL_NAME_PROP_NAME

  JposEntry property name that must be defined by all JposEntry objects used to create services
  Since:
    0.1 (Philly 99 meeting)

### SERVICE_CLASS_PROP_NAME

    public static final java.lang.String SERVICE_CLASS_PROP_NAME

  JposEntry property name that specifies the fully qualified class name for the service
  Since:
    1.2 (NY 2K meeting)

### VENDOR_NAME_PROP_NAME

    public static final java.lang.String VENDOR_NAME_PROP_NAME

  The vendor name string
  Since:
    1.2 (NY 2K meeting)

### VENDOR_URL_PROP_NAME

    public static final java.lang.String VENDOR_URL_PROP_NAME

  The vendor URL string
  Since:
    1.2 (NY 2K meeting)

### DEVICE_CATEGORY_PROP_NAME

    public static final java.lang.String DEVICE_CATEGORY_PROP_NAME

  The device category for the service must be one of JavaPOS defined categories i.e. CashDrawer, CashChanger, MSR, MICR, ...
  Since:
    1.2 (NY 2K meeting)

### JPOS_VERSION_PROP_NAME

    public static final java.lang.String JPOS_VERSION_PROP_NAME

  The JavaPOS version supported by this service (i.e. 1.4, 1.5...)
  Since:
    1.2 (NY 2K meeting)

### PRODUCT_NAME_PROP_NAME

    public static final java.lang.String PRODUCT_NAME_PROP_NAME

  A short name for this product
  Since:
    1.2 (NY 2K meeting)

### PRODUCT_DESCRIPTION_PROP_NAME

    public static final java.lang.String PRODUCT_DESCRIPTION_PROP_NAME

  A string description for this product
  Since:
    1.2 (NY 2K meeting)

### PRODUCT_URL_PROP_NAME

    public static final java.lang.String PRODUCT_URL_PROP_NAME

  The product's URL string
  Since:
    1.2 (NY 2K meeting)

Method Detail

### getPropertyCount

    public int getPropertyCount()

  Returns:
    count of number of properties
  Since:
    0.1 (Philly 99 meeting)

### getPropertyNames

    public java.util.Enumeration getPropertyNames()

  Returns:
    an enumerator for the properties names
  Since:
    0.1 (Philly 99 meeting)

### hasPropertyWithName

    public boolean hasPropertyWithName(java.lang.String propName)

  Parameters:
    `propName` - the property name String
  Returns:
    true if there is a property by the name specified
  Since:
    0.1 (Philly 99 meeting)

### hasPropertyWithValue

    public boolean hasPropertyWithValue(java.lang.Object propValue)

  Parameters:
    `propValue` - the property's value Object
  Returns:
    true if there is a property by the value specified

    NOTE: Object.equals method will be used to compare

  Since:
    0.1 (Philly 99 meeting)

### getPropertyValue

    public java.lang.Object getPropertyValue(java.lang.String propName)

  Parameters:
    `propName` - the property's name String
  Returns:
    the property's value Object
  Since:
    0.1 (Philly 99 meeting)

### getPropertyType

    public java.lang.Class getPropertyType(java.lang.String propName)

  Parameters:
    `propName` - the property's name String
  Returns:
    the property's type
  Since:
    2.0.0

### modifyPropertyValue

    public java.lang.Object modifyPropertyValue(java.lang.String propName,
                                                java.lang.Object propValue)
                                         throws java.lang.IllegalArgumentException

  Modifies the property value of the property passed
  Parameters:
    `propName` - the property name
    `propValue` - the new property value
  Returns:
    the oldPropValue or null if this property does not exist
  Throws:
    `java.lang.IllegalArgumentException` - if the propName or propValue is null
  Since:
    1.3 (Tokyo 2001 meeting)

### addProperty

    public java.lang.Object addProperty(java.lang.String propName,
                                        java.lang.Object propValue)
                                 throws java.lang.IllegalArgumentException

  Adds a property to the JposEntry object. NOTE: any property with the same name gets overlaid
  Parameters:
    `propName` - the name of this property (should be unique per property)
    `propValue` - the properties value Object
  Throws:
    `java.lang.IllegalArgumentException` - if the propName or propValue is null
  Since:
    0.1 (Philly 99 meeting)

### removeProperty

    public java.lang.Object removeProperty(java.lang.String propName)

  Looks for a property with name specified and removes it
  Parameters:
    `propName` - the name String of the property to remove
  Since:
    0.1 (Philly 99 meeting)

### equals

    public boolean equals(JposEntry otherEntry)

  Returns:
    true if the two JposEntries have the same properties
  Since:
    0.1 (Philly 99 meeting)

### getRegPopulator

    public JposRegPopulator getRegPopulator()

  Returns:
    the JposRegPopulator that loads/saves this entry. If null the default populator is used
  Since:
    1.3 (Washington DC 2001 meeting)

### getLogicalName

    public java.lang.String getLogicalName()

  Returns:
    the logical name for this JposEntry. This is a shortcut for easily getting the logical name vs getting a property and passing the logical name constant
  Since:
    1.3 (Washington DC 2001 meeting)
  See Also:
    `getPropertyValue(java.lang.String)`, `LOGICAL_NAME_PROP_NAME`

### getProp

    public JposEntry.Prop getProp(java.lang.String propName)

  Returns a JposEntry.Prop with name specified.

  Changes to that property object are not reflected in this entry. You must apply the changes to the property to the entry by calling modifyProp() method

  Parameters:
    `propName` - the property name
  Returns:
    the JposEntry.Prop with name specified or null if no such property exist
  Since:
    2.0.0

### getProps

    public java.util.Iterator getProps()

  Returns an Iterator of JposEntry.Prop in this entry

  Changes to any of the returned property object are not reflected in this entry. You must apply the changes to the property to the entry by calling modifyProp() method

  Returns:
    an Iterator over the properties in this JposEntry as JposEntry.Prop objects
  Since:
    1.3 (Washington DC 2001)

### add

    public void add(JposEntry.Prop prop)
             throws java.lang.IllegalArgumentException

  Adds a new property
  Parameters:
    `prop` - the JposEntry.Prop to add
  Throws:
    `java.lang.IllegalArgumentException` - if the prop is null
  Since:
    1.3 (Washington DC 2001 meeting)

### remove

    public void remove(JposEntry.Prop prop)

  Looks for a property with name specified and removes it. If none exist then does nothing and return null
  Parameters:
    `name` - the name String of the property to remove
  Returns:
    the value for the name passed
  Since:
    0.1 (Philly 99 meeting)

### modify

    public void modify(JposEntry.Prop prop)
                throws java.lang.IllegalArgumentException

  Modifies the property with name of property passed with the new value if that property currently exist in the entry otherwise does nothing
  Parameters:
    `prop` - the JposEntry.Prop to modify
  Throws:
    `java.lang.IllegalArgumentException` - if the prop is null
  Since:
    2.0.0

### hasProp

    public boolean hasProp(JposEntry.Prop prop)

  Parameters:
    `prop` - the JposEntry.Prop to check for
  Returns:
    true if this entry has the property passed
  Since:
    1.3 (Washington DC 2001 meeting)

### createProp

    public JposEntry.Prop createProp(java.lang.String propName,
                                     java.lang.Object propValue,
                                     java.lang.Class propType)
                              throws JposConfigException

  Parameters:
    `propName` - the property name
    `propValue` - the property value
    `propType` - the property type (valid for this value)
  Returns:
    a JposEntry.Prop object created with the tripplet passed as arguments
  Throws:
    `JposConfigException` - if any of the argument is null or the property value and type mismatch or this is not a valid property type
  Since:
    2.0.0
  See Also:
    `JposEntryConst.PROP_TYPES`

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

This API and code belongs to the JavaPOS committee please see LISCENCE file for details