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

eu.clarussecure.proxy.protocol.plugins.pgsql.message.PgsqlNoticeMessage Maven / Gradle / Ivy

The newest version!
package eu.clarussecure.proxy.protocol.plugins.pgsql.message;

import java.util.Map;
import java.util.Objects;

import eu.clarussecure.proxy.spi.CString;
import io.netty.util.internal.StringUtil;

public class PgsqlNoticeMessage extends PgsqlDetailedQueryResponseMessage> {

    public static final byte TYPE = (byte) 'N';

    private Map fields;

    public PgsqlNoticeMessage(Map fields) {
        this.fields = Objects.requireNonNull(fields, "fields must not be null");
    }

    public Map getFields() {
        return fields;
    }

    public void setFields(Map fields) {
        this.fields = Objects.requireNonNull(fields, "fields must not be null");
    }

    @Override
    public byte getType() {
        return TYPE;
    }

    @Override
    public String toString() {
        StringBuilder builder = new StringBuilder(StringUtil.simpleClassName(this));
        builder.append(" [");
        builder.append("fields=");
        int i = 0;
        for (Map.Entry entry : fields.entrySet()) {
            builder.append("'").append((char) entry.getKey().byteValue()).append("':").append(entry.getValue());
            if (++i < fields.size()) {
                builder.append('\n');
            }
        }
        builder.append("]");
        return builder.toString();
    }

    @Override
    public Map getDetails() {
        return getFields();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy