62 lines
1.9 KiB
Objective-C

/* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA */
#ifndef GROUP_REPLICATION_AUTO_INCREMENT
#define GROUP_REPLICATION_AUTO_INCREMENT
#include "plugin_server_include.h"
#define SERVER_DEFAULT_AUTO_INCREMENT 1
#define SERVER_DEFAULT_AUTO_OFFSET 1
/*
@class Plugin_group_replication_auto_increment
This class will be used to configure auto_increment variables
(auto_increment_increment and auto_increment_offset)
*/
class Plugin_group_replication_auto_increment
{
public:
/**
Plugin_group_replication_auto_increment constructor
Set auto_increment_increment and auto_increment_offset in the server
*/
Plugin_group_replication_auto_increment();
/**
Set auto_increment_increment and auto_increment_offset
@param increment the interval between successive column values
@param offset the starting point for the AUTO_INCREMENT column value
*/
void set_auto_increment_variables(ulong increment, ulong offset);
/**
Reset auto_increment_increment and auto_increment_offset,
if modified by this plugin in set function
*/
void reset_auto_increment_variables();
private:
ulong group_replication_auto_increment;
ulong group_replication_auto_offset;
};
#endif /* GROUP_REPLICATION_AUTO_INCREMENT */