using System; using System.Collections.Generic; using System.Linq.Expressions; using xIdentityService.Configuration; namespace xIdentityService.Interfaces { public interface IXProxyHelper { /// /// Proxy Configuration ... /// /// XProxyConfiguration Configuration { get; } /// /// retrie Normalize Host ... /// /// string NormalizeHost (); /// /// Validate XProxy Configuration for Client ... /// /// bool ValidateConfiguration (); /// /// Retrieve all Prepared url of Routes ... /// /// IEnumerable GetRouteUrls (); /// /// retrieve all registred Routes ... /// /// IEnumerable GetRoutes (); /// /// Prepare a request url for a Proxy Route ... /// /// /// /// string PrepareActionUrlForXProxyRoute ( string url, XProxyRouteDescriptor descriptor ); /// /// Prepare a request url for a Selected Proxy Route ... /// /// /// /// string PrepareActionUrlForXProxyRoute ( string url, Expression> whereClause ); /// /// Find an Specific Route ... /// /// /// XProxyRouteDescriptor FindRoute (Expression> whereClause); } }