예제 #1
0
  /** Sets default values for this item. */
  protected void setDefaultValues() {
    int[] supportedFields = pimList.getSupportedFields();
    for (int i = 0; i < supportedFields.length; i++) {
      int field = supportedFields[i];
      PIMField pimField = getField(field, false, true);
      if ((pimField == null || pimField.getValueCount() == 0)
          && pimHandler.hasDefaultValue(pimListHandle, field)) {

        Object value = null;
        switch (pimList.getFieldDataType(field)) {
          case PIMItem.BOOLEAN:
            value = new Boolean(pimHandler.getDefaultBooleanValue(pimListHandle, field));
            break;
          case PIMItem.BINARY:
            value = pimHandler.getDefaultBinaryValue(pimListHandle, field);
            break;
          case PIMItem.DATE:
            value = new Long(pimHandler.getDefaultDateValue(pimListHandle, field));
            break;
          case PIMItem.INT:
            value = new Integer(pimHandler.getDefaultIntValue(pimListHandle, field));
            break;
          case PIMItem.STRING:
            value = pimHandler.getDefaultStringValue(pimListHandle, field);
            break;
          case PIMItem.STRING_ARRAY:
            value = pimHandler.getDefaultStringArrayValue(pimListHandle, field);
            break;
          default:
            continue;
        }
        addValue(field, PIMItem.ATTR_NONE, value, false);
      }
    }
  }