code from transport classes placed to mapping for better usage in custom
implementation