@SuppressWarnings("rawtypes")
    public Joiner appendEntries(final Object entity) {
        if (entity == null) {
            return this;
        } else if (entity instanceof Map) {
            return appendEntries((Map) entity);
        }

        N.checkArgument(N.isEntity(entity.getClass()), "'entity' must be entity class with getter/setter methods");

        StringBuilder sb = null;
        Object propValue = null;

        for (String propName : ClassUtil.getPropGetMethodList(entity.getClass()).keySet()) {
            propValue = ClassUtil.getPropValue(entity, propName);

            if (propValue != null || skipNull == false) {
                if (sb == null) {
                    sb = prepareBuilder().append(propName).append(keyValueDelimiter).append(toString(propValue));
                } else {
                    if (isEmptyDelimiter) {
                        sb.append(propName);
                    } else {
                        sb.append(delimiter).append(propName);
                    }

                    if (isEmptyKeyValueDelimiter) {
                        sb.append(toString(propValue));
                    } else {
                        sb.append(keyValueDelimiter).append(toString(propValue));
                    }
                }
            }
        }

        return this;
    }
@ SuppressWarnings ( "rawtypes" ) public Joiner appendEntries ( final Object entity ) { if ( entity == null ) { return this ; } else if ( entity instanceof Map ) { return appendEntries ( ( Map ) entity ) ; } N . checkArgument ( N . isEntity ( entity . getClass ( ) ) , "'entity' must be entity class with getter/setter methods" ) ; StringBuilder sb = null ; Object propValue = null ; for ( String propName : ClassUtil . getPropGetMethodList ( entity . getClass ( ) ) . keySet ( ) ) { propValue = ClassUtil . getPropValue ( entity , propName ) ; if ( propValue != null || skipNull == false ) { if ( sb == null ) { sb = prepareBuilder ( ) . append ( propName ) . append ( keyValueDelimiter ) . append ( toString ( propValue ) ) ; } else { if ( isEmptyDelimiter ) { sb . append ( propName ) ; } else { sb . append ( delimiter ) . append ( propName ) ; } if ( isEmptyKeyValueDelimiter ) { sb . append ( toString ( propValue ) ) ; } else { sb . append ( keyValueDelimiter ) . append ( toString ( propValue ) ) ; } } } } return this ; }
@param entity entity class with getter/setter methods.
@return