Module iso8583_process

iso8583_process module.

Copyright © Nuku Ameyibor <nayibor@startmail.com>

Description

iso8583_process module.
this module is responsible for processing is8583 messages

Function Index

convert_base_pad/3this converts data between bases and also pads the data for our purposes.
create_bitmap/2
get_bitmap_subs/3for getting the bitmap,mti,Data fields.
get_bitmap_type/1gets the bitmap type.
get_field/2this is for getting a particular field in an iso message back.
get_size/2
get_size_send/2
get_spec_field/2gets the specification for a particular field.
load_specification/1creats a new map specification which contains the various data elements and a bitmap from a specification file.
pack/2marshalls a message to be sent.
pad_data/3this is for padding a binary up to a length of N digits with a binary character mostly used in the bitmap.
process_data_element/4
set_field/3this is for setting a particular field in the message or an mti.
set_field_list/1
set_mti/2
unpack/2this part accepts a list iso message with the header removed and extracts the mti,bitmap,data elements into a map object it also accepts a specification which will be used for getting the specifications for the message exceptions can be thrown here if the string for the message hasnt been formatted well but they should be caught in whichever code is calling the system the data is first converted into a binary before the processing is done .

Function Details

convert_base_pad/3

convert_base_pad(Data_Base_10::integer(), Number_pad::integer(), Pad_digit::binary()) -> binary()

this converts data between bases and also pads the data for our purposes

create_bitmap/2

create_bitmap(X1::binary | hex, Bitmap_final_bit::binary()) -> binary() | list()

get_bitmap_subs/3

get_bitmap_subs(X1::atom(), Bin_message::binary(), Specification::map()) -> tuple()

for getting the bitmap,mti,Data fields

get_bitmap_type/1

get_bitmap_type(Specification::map()) -> atom()

gets the bitmap type

get_field/2

get_field(Fld_num::pos_integer() | binary(), Iso_Map::map()) -> {ok, term()} | error

this is for getting a particular field in an iso message back

get_size/2

get_size(X1::bitmap:atom(), Bitmap::binary() | list()) -> integer()

get_size_send/2

get_size_send(Fields_iolist::iolist(), Length_max_size::non_neg_integer()) -> list()

get_spec_field/2

get_spec_field(Field::non_neg_integer() | mti, Specification::map()) -> tuple()

gets the specification for a particular field

load_specification/1

load_specification(Filename::string() | binary()) -> map()

creats a new map specification which contains the various data elements and a bitmap from a specification file

pack/2

pack(Message_Map::map(), Specification::map()) -> iolist()

marshalls a message to be sent. pack all the differnt elements in a message into an iolist

pad_data/3

pad_data(Bin::binary(), Number::integer(), Character::binary()) -> binary()

this is for padding a binary up to a length of N digits with a binary character mostly used in the bitmap

process_data_element/4

process_data_element(Bitmap::binary(), Index_start::integer(), Data_binary::binary(), Specification::map()) -> map()

set_field/3

set_field(Iso_Map::map(), Fld_num::pos_integer() | mti, Fld_val::term()) -> {ok, map()}

this is for setting a particular field in the message or an mti

set_field_list/1

set_field_list(List::list()) -> map()

set_mti/2

set_mti(Iso_Map::map(), Fld_val::term()) -> {ok, map()} | {error, term()}

unpack/2

unpack(Rest::list(), Specification::map()) -> map()

this part accepts a list iso message with the header removed and extracts the mti,bitmap,data elements into a map object it also accepts a specification which will be used for getting the specifications for the message exceptions can be thrown here if the string for the message hasnt been formatted well but they should be caught in whichever code is calling the system the data is first converted into a binary before the processing is done . much faster and uses less memory than using lists


Generated by EDoc