dca_interface  6.3.4
dca::Url Class Reference

#include <base_url.h>

Detailed Description

Encapsulates a URL object.

URL objects are used in some classifier functions as input, or extracted from other objects, for example emails.

URL objects buffer the normalization process of the given URL string and allow an optimized internal access to the different URL parts.

Supported protocols for a valid Url object are currently

  • http:
  • https:
  • ftp:

Other protocols are not currently supported. An error will occur if an attempt is made to create a URL object with a different protocol to those shown above.

Note
Support for embedded URLs is available on the classifier level. If you want to disable this feature (per default it is switched on) you will need to set up the related options when creating your UrlDbClassifier.
See also
URL Classification, UrlDbClassifier, UrlDbClassifierOptions

Definition at line 43 of file base_url.h.

Static Public Member Functions

static Url create (const DcaInstance &aDcaInstance, const std::string &urlString)
 Standard Url creation function. More...
 

Member Function Documentation

◆ create()

static Url dca::Url::create ( const DcaInstance aDcaInstance,
const std::string &  urlString 
)
static

Standard Url creation function.

This is used to create a Url object from a given string.

The urlString will be internally normalized and split into component parts, if necessary.

Parameters
[in]aDcaInstanceA previously initialized DcaInstance object
[in]urlStringA string in UTF-8 representing a URL e.g. "www.ibm.com" or "http://www.google.com"
Returns
An initialized Url object.
Exceptions
ExDca- One of the following error codes are available (using ExDca::getReturnCode() in your catch-handler)
Note
At the moment conversion to Punycode is not carried out as part of the normalization process. Therefore, you have to perform in advance the conversion to Punycode, if you have an Internationalized Domain Name (IDN). Otherwise a URL with an IDN can not be found in our URL database.

The documentation for this class was generated from the following file: