/*
 * This file is generated by jOOQ.
 */
package ervu_secret.ervu_secret.db_beans.pg_catalog.routines;


import ervu_secret.ervu_secret.db_beans.pg_catalog.PgCatalog;

import java.sql.Timestamp;

import org.jooq.Parameter;
import org.jooq.impl.AbstractRoutine;
import org.jooq.impl.DefaultDataType;
import org.jooq.impl.Internal;
import org.jooq.impl.SQLDataType;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class PgStatGetWalReceiver extends AbstractRoutine<java.lang.Void> {

    private static final long serialVersionUID = 1L;

    /**
     * The parameter <code>pg_catalog.pg_stat_get_wal_receiver.pid</code>.
     */
    public static final Parameter<Integer> PID = Internal.createParameter("pid", SQLDataType.INTEGER, false, false);

    /**
     * The parameter <code>pg_catalog.pg_stat_get_wal_receiver.status</code>.
     */
    public static final Parameter<String> STATUS = Internal.createParameter("status", SQLDataType.CLOB, false, false);

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public static final Parameter<Object> RECEIVE_START_LSN = Internal.createParameter("receive_start_lsn", DefaultDataType.getDefaultDataType("\"pg_catalog\".\"pg_lsn\""), false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.receive_start_tli</code>.
     */
    public static final Parameter<Integer> RECEIVE_START_TLI = Internal.createParameter("receive_start_tli", SQLDataType.INTEGER, false, false);

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public static final Parameter<Object> WRITTEN_LSN = Internal.createParameter("written_lsn", DefaultDataType.getDefaultDataType("\"pg_catalog\".\"pg_lsn\""), false, false);

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public static final Parameter<Object> FLUSHED_LSN = Internal.createParameter("flushed_lsn", DefaultDataType.getDefaultDataType("\"pg_catalog\".\"pg_lsn\""), false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.received_tli</code>.
     */
    public static final Parameter<Integer> RECEIVED_TLI = Internal.createParameter("received_tli", SQLDataType.INTEGER, false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.last_msg_send_time</code>.
     */
    public static final Parameter<Timestamp> LAST_MSG_SEND_TIME = Internal.createParameter("last_msg_send_time", SQLDataType.TIMESTAMP(0), false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.last_msg_receipt_time</code>.
     */
    public static final Parameter<Timestamp> LAST_MSG_RECEIPT_TIME = Internal.createParameter("last_msg_receipt_time", SQLDataType.TIMESTAMP(0), false, false);

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public static final Parameter<Object> LATEST_END_LSN = Internal.createParameter("latest_end_lsn", DefaultDataType.getDefaultDataType("\"pg_catalog\".\"pg_lsn\""), false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.latest_end_time</code>.
     */
    public static final Parameter<Timestamp> LATEST_END_TIME = Internal.createParameter("latest_end_time", SQLDataType.TIMESTAMP(0), false, false);

    /**
     * The parameter <code>pg_catalog.pg_stat_get_wal_receiver.slot_name</code>.
     */
    public static final Parameter<String> SLOT_NAME = Internal.createParameter("slot_name", SQLDataType.CLOB, false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.sender_host</code>.
     */
    public static final Parameter<String> SENDER_HOST = Internal.createParameter("sender_host", SQLDataType.CLOB, false, false);

    /**
     * The parameter
     * <code>pg_catalog.pg_stat_get_wal_receiver.sender_port</code>.
     */
    public static final Parameter<Integer> SENDER_PORT = Internal.createParameter("sender_port", SQLDataType.INTEGER, false, false);

    /**
     * The parameter <code>pg_catalog.pg_stat_get_wal_receiver.conninfo</code>.
     */
    public static final Parameter<String> CONNINFO = Internal.createParameter("conninfo", SQLDataType.CLOB, false, false);

    /**
     * Create a new routine call instance
     */
    public PgStatGetWalReceiver() {
        super("pg_stat_get_wal_receiver", PgCatalog.PG_CATALOG);

        addOutParameter(PID);
        addOutParameter(STATUS);
        addOutParameter(RECEIVE_START_LSN);
        addOutParameter(RECEIVE_START_TLI);
        addOutParameter(WRITTEN_LSN);
        addOutParameter(FLUSHED_LSN);
        addOutParameter(RECEIVED_TLI);
        addOutParameter(LAST_MSG_SEND_TIME);
        addOutParameter(LAST_MSG_RECEIPT_TIME);
        addOutParameter(LATEST_END_LSN);
        addOutParameter(LATEST_END_TIME);
        addOutParameter(SLOT_NAME);
        addOutParameter(SENDER_HOST);
        addOutParameter(SENDER_PORT);
        addOutParameter(CONNINFO);
    }

    /**
     * Get the <code>pid</code> parameter OUT value from the routine
     */
    public Integer getPid() {
        return get(PID);
    }

    /**
     * Get the <code>status</code> parameter OUT value from the routine
     */
    public String getStatus() {
        return get(STATUS);
    }

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public Object getReceiveStartLsn() {
        return get(RECEIVE_START_LSN);
    }

    /**
     * Get the <code>receive_start_tli</code> parameter OUT value from the
     * routine
     */
    public Integer getReceiveStartTli() {
        return get(RECEIVE_START_TLI);
    }

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public Object getWrittenLsn() {
        return get(WRITTEN_LSN);
    }

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public Object getFlushedLsn() {
        return get(FLUSHED_LSN);
    }

    /**
     * Get the <code>received_tli</code> parameter OUT value from the routine
     */
    public Integer getReceivedTli() {
        return get(RECEIVED_TLI);
    }

    /**
     * Get the <code>last_msg_send_time</code> parameter OUT value from the
     * routine
     */
    public Timestamp getLastMsgSendTime() {
        return get(LAST_MSG_SEND_TIME);
    }

    /**
     * Get the <code>last_msg_receipt_time</code> parameter OUT value from the
     * routine
     */
    public Timestamp getLastMsgReceiptTime() {
        return get(LAST_MSG_RECEIPT_TIME);
    }

    /**
     * @deprecated Unknown data type. If this is a qualified, user-defined type,
     * it may have been excluded from code generation. If this is a built-in
     * type, you can define an explicit {@link org.jooq.Binding} to specify how
     * this type should be handled. Deprecation can be turned off using
     * {@literal <deprecationOnUnknownTypes/>} in your code generator
     * configuration.
     */
    @Deprecated
    public Object getLatestEndLsn() {
        return get(LATEST_END_LSN);
    }

    /**
     * Get the <code>latest_end_time</code> parameter OUT value from the routine
     */
    public Timestamp getLatestEndTime() {
        return get(LATEST_END_TIME);
    }

    /**
     * Get the <code>slot_name</code> parameter OUT value from the routine
     */
    public String getSlotName() {
        return get(SLOT_NAME);
    }

    /**
     * Get the <code>sender_host</code> parameter OUT value from the routine
     */
    public String getSenderHost() {
        return get(SENDER_HOST);
    }

    /**
     * Get the <code>sender_port</code> parameter OUT value from the routine
     */
    public Integer getSenderPort() {
        return get(SENDER_PORT);
    }

    /**
     * Get the <code>conninfo</code> parameter OUT value from the routine
     */
    public String getConninfo() {
        return get(CONNINFO);
    }
}
