Changeset View
Changeset View
Standalone View
Standalone View
apps/kolab_guam/src/kolab_guam_rule.erl
Show All 12 Lines | |||||
%% GNU General Public License for more details. | %% GNU General Public License for more details. | ||||
%% | %% | ||||
%% You should have received a copy of the GNU General Public License | %% You should have received a copy of the GNU General Public License | ||||
%% along with this program. If not, see <http://www.gnu.org/licenses/>. | %% along with this program. If not, see <http://www.gnu.org/licenses/>. | ||||
-module(kolab_guam_rule). | -module(kolab_guam_rule). | ||||
-callback new(Args :: any()) -> any(). | -callback new(Args :: any()) -> any(). | ||||
-callback applies(ConnectionDetails :: list(), Buffer :: binary(), State :: any()) -> { true, State :: any() } | | -callback applies(ConnectionDetails :: list(), Buffer :: binary(), SplitBinary :: { Tag :: binary(), Command :: binary(), Data :: binary() }, State :: any()) -> { true, State :: any() } | | ||||
{ false, State :: any() } | | { false, State :: any() } | | ||||
{ notyet, State :: any() }. | { notyet, State :: any() }. | ||||
-callback apply_to_client_message(ImapSession :: pid(), Command :: binary(), State :: any()) -> { ProcessedCommand :: binary(), State :: any() }. | -callback apply_to_client_message(ImapSession :: pid(), Command :: binary(), SplitBinary :: { Tag :: binary(), Command :: binary(), Data :: binary() }, State :: any()) -> { ProcessedCommand :: binary(), State :: any() }. | ||||
-callback apply_to_server_message(ImapSession :: pid(), Command :: binary(), State :: any()) -> { ProcessedCommand :: binary(), State :: any() }. | -callback apply_to_server_message(ImapSession :: pid(), Command :: binary(), State :: any()) -> { ProcessedCommand :: binary(), State :: any() }. | ||||
-callback imap_data(ResponseToken :: any(), Response :: any(), State :: any()) -> State ::any(). | -callback imap_data(ResponseToken :: any(), Response :: any(), State :: any()) -> State ::any(). |