private static ApiManagementInterface apiFactory(AvailableApiServices requestedApi)
        {
            switch (requestedApi)
            {
            case AvailableApiServices.CAT:
                return(new CatServiceManager());

            case AvailableApiServices.OMDB:
                return(new OmdbServiceManger());

            case AvailableApiServices.TWITTER:
                return(new TwitterServiceManager());

            default:
                throw new FormatException("Requested API is not available. Please check configuration.");
            }
        }
        public static RestResponse GetResponseFromUriAsRestResponse(AvailableApiServices requestedApiHost, String uriToConnectThrough)
        {
            ApiManagementInterface apiHost = apiFactory(requestedApiHost);

            return(apiHost.GetResponseFromUriAsRestResponse(uriToConnectThrough));
        }
        public static String GetSpecificValueFromXmlResponse(AvailableApiServices requestedApiHost, String uriToConnectThrough, String xmlKey)
        {
            ApiManagementInterface apiHost = apiFactory(requestedApiHost);

            return(apiHost.GetSpecificValueFromXmlResponse(uriToConnectThrough, xmlKey));
        }