public function init(
        $name,
        $requestType,
        $responseType,
        $responseWrapper,
        $method,
        $urlBuildMethod,
        $baseUrl,
        $port,
        array $parameters,
        array $addsOn = array(),
        array $requestHeaders = array()
    ) {
        // Setting object fields
        $this->name             = $name;
        $this->requestType      = $requestType;
        $this->responseType     = $responseType;
        $this->responseWrapper  = $responseWrapper;
        $this->uriBuildMethod   = $urlBuildMethod;
        $this->parameters       = $parameters;
        $this->baseUrl          = rtrim($baseUrl, '/');
        $this->port             = $port;
        $this->addsOn           = $addsOn;
        $this->requestHeaders   = $requestHeaders;

        // Configuring parent object field
        $this->setMethod($method);
        $this->setPort($this->port);

        // Setting headers from header array
        if (count($requestHeaders) > 0) {
            $this->getHeaders()->addHeaders($requestHeaders);
        }
    }