All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.examples.utils.ToStringHelper Maven / Gradle / Ivy

The newest version!
package org.hibernate.examples.utils;

import java.util.LinkedHashMap;
import java.util.Map;

import static java.lang.String.valueOf;

/**
 * org.hibernate.examples.utils.ToStringHelper
 *
 * @author 배성혁 [email protected]
 * @since 2013. 11. 27. 오후 4:35
 */
public class ToStringHelper {

    public static ToStringHelper create(Object self) {
        return new ToStringHelper(self.getClass().getSimpleName());
    }

    private Map map = new LinkedHashMap();
    private final String className;

    public ToStringHelper(final String className) {
        this.className = className;
    }

    public ToStringHelper add(String name, Object value) {
        return addMap(name, value);
    }

    public ToStringHelper add(String name, boolean value) {
        return addMap(name, valueOf(value));
    }

    public ToStringHelper add(String name, char value) {
        return addMap(name, valueOf(value));
    }

    public ToStringHelper add(String name, double value) {
        return addMap(name, valueOf(value));
    }

    public ToStringHelper add(String name, float value) {
        return addMap(name, valueOf(value));
    }

    public ToStringHelper add(String name, int value) {
        return addMap(name, valueOf(value));
    }

    public ToStringHelper add(String name, long value) {
        return addMap(name, valueOf(value));
    }

    @Override
    public String toString() {
        boolean isFirst = true;
        final String separator = ",";
        StringBuilder builder = new StringBuilder(32).append(className).append("{");
        for (Map.Entry entry : map.entrySet()) {
            if (!isFirst) {
                builder.append(separator);
            }
            builder.append(entry.getKey()).append("=").append(entry.getValue());
            isFirst = false;
        }
        builder.append("}");
        return builder.toString();
    }

    private ToStringHelper addMap(final String name, Object value) {
        map.put(name, value);
        return this;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy