public <E> void setFieldValue(ProfileField<E> field, E value) {
        if (field == null || value == null) {
            throw new NullPointerException();
        }

        if (getStatus(field) == FieldStatus.UNACCESSIBLE) {
            throw new IllegalStateException("Cannot write an unaccessible field");
        }

        String newVal = ProfileFieldConverter.forField(field).toStorageString(value);
        String currentVal = mFields.getString(field.getIdentifier());

        if (newVal.equals(currentVal)) {
            return;
        }

        if (getStatus(field) == FieldStatus.ORIGINAL) {
            setStatus(field.getIdentifier(), FieldStatus.MODIFIED);
        }

        mFields.putString(field.getIdentifier(), newVal);
    }
public <E> void setFieldValue(ProfileField<E> field, E value) {
        if (field == null || value == null) {
            throw new NullPointerException();
        }

        if (getStatus(field) == FieldStatus.UNACCESSIBLE) {
            throw new IllegalStateException("Cannot write an unaccessible field");
        }

        String newVal = ProfileFieldConverter.forField(field).toStorageString(value);
        String currentVal = mFields.getString(field.getIdentifier());

        if (newVal.equals(currentVal)) {
            return;
        }

        if (getStatus(field) == FieldStatus.ORIGINAL) {
            setStatus(field.getIdentifier(), FieldStatus.MODIFIED);
        }

        mFields.putString(field.getIdentifier(), newVal);
    }
public < E > void setFieldValue ( ProfileField < E > field , E value ) { if ( field == null || value == null ) { throw new NullPointerException ( ) ; } if ( getStatus ( field ) == FieldStatus . UNACCESSIBLE ) { throw new IllegalStateException ( "Cannot write an unaccessible field" ) ; } String newVal = ProfileFieldConverter . forField ( field ) . toStorageString ( value ) ; String currentVal = mFields . getString ( field . getIdentifier ( ) ) ; if ( newVal . equals ( currentVal ) ) { return ; } if ( getStatus ( field ) == FieldStatus . ORIGINAL ) { setStatus ( field . getIdentifier ( ) , FieldStatus . MODIFIED ) ; } mFields . putString ( field . getIdentifier ( ) , newVal ) ; }
Sets the value of a field in the container. After the first set of a field, calling {@link
ProfileFieldContainer#isModified(ProfileField))} with it as parameter will return true.

@param field - the fiel whose value to set
@param value - the new value of the field.
Sets the value of a field in the container . After the first set of a field calling { @link ProfileFieldContainer#isModified ( ProfileField )) } with it as parameter will return true .