// Path: src/main/ru/bpmink/bpm/model/common/Describable.java
// public interface Describable {
// 
//     String describe();
// 
//     String describe(String linePrefix);
// 
// }
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String CLOSE_BRACKET = "]";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String EQUALS = "=";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String LINE_SEPARATOR = System.getProperty("line.separator");
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String NEW_LINE = "\n";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String NULL_STRING = "null";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String OPEN_BRACKET = "[";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String SPACE = " ";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String TAB = "\t";


import org.apache.commons.lang3.builder.ToStringStyle;
import ru.bpmink.bpm.model.common.Describable;
import java.util.Collection;
import static ru.bpmink.util.Constants.CLOSE_BRACKET;
import static ru.bpmink.util.Constants.EQUALS;
import static ru.bpmink.util.Constants.LINE_SEPARATOR;
import static ru.bpmink.util.Constants.NEW_LINE;
import static ru.bpmink.util.Constants.NULL_STRING;
import static ru.bpmink.util.Constants.OPEN_BRACKET;
import static ru.bpmink.util.Constants.SPACE;
import static ru.bpmink.util.Constants.TAB;
            }
            super.appendDetail(buffer, fieldName, value);
        }


        @Override
        protected void appendClassName(StringBuffer buffer, Object object) {
            buffer.append(LINE_SEPARATOR);
            super.appendClassName(buffer, object);
        }
    }

    public static class NoClassNameWithLineBreakToStringStyle extends DescribableStyle {

        private final String linePrefix;

        /**
         * <p>Controls <code>String</code> formatting
         * for {@link org.apache.commons.lang3.builder.ReflectionToStringBuilder}.</p>
         *
         * @param linePrefix is default prefix for each line.
         */
        public NoClassNameWithLineBreakToStringStyle(String linePrefix) {
            super();
            if (linePrefix == null) {
                throw new IllegalArgumentException("LinePrefix can't be null!");
            }
            this.linePrefix = linePrefix;

            setUseShortClassName(false);
// Path: src/main/ru/bpmink/bpm/model/common/Describable.java
// public interface Describable {
// 
//     String describe();
// 
//     String describe(String linePrefix);
// 
// }
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String CLOSE_BRACKET = "]";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String EQUALS = "=";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String LINE_SEPARATOR = System.getProperty("line.separator");
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String NEW_LINE = "\n";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String NULL_STRING = "null";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String OPEN_BRACKET = "[";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String SPACE = " ";
// 
// Path: src/main/ru/bpmink/util/Constants.java
// public static final String TAB = "\t";


// Path: src/main/ru/bpmink/util/Styles.java
import org.apache.commons.lang3.builder.ToStringStyle;
import ru.bpmink.bpm.model.common.Describable;
import java.util.Collection;
import static ru.bpmink.util.Constants.CLOSE_BRACKET;
import static ru.bpmink.util.Constants.EQUALS;
import static ru.bpmink.util.Constants.LINE_SEPARATOR;
import static ru.bpmink.util.Constants.NEW_LINE;
import static ru.bpmink.util.Constants.NULL_STRING;
import static ru.bpmink.util.Constants.OPEN_BRACKET;
import static ru.bpmink.util.Constants.SPACE;
import static ru.bpmink.util.Constants.TAB;

            }
            super.appendDetail(buffer, fieldName, value);
        }


        @Override
        protected void appendClassName(StringBuffer buffer, Object object) {
            buffer.append(LINE_SEPARATOR);
            super.appendClassName(buffer, object);
        }
    }

    public static class NoClassNameWithLineBreakToStringStyle extends DescribableStyle {

        private final String linePrefix;

        /**
         * <p>Controls <code>String</code> formatting
         * for {@link org.apache.commons.lang3.builder.ReflectionToStringBuilder}.</p>
         *
         * @param linePrefix is default prefix for each line.
         */
        public NoClassNameWithLineBreakToStringStyle(String linePrefix) {
            super();
            if (linePrefix == null) {
                throw new IllegalArgumentException("LinePrefix can't be null!");
            }
            this.linePrefix = linePrefix;

            setUseShortClassName(false);
            setUseClassName(false);