src/xmlpatterns/api/qabstracturiresolver.cpp
changeset 0 1918ee327afb
child 4 3b1da2848fc7
equal deleted inserted replaced
-1:000000000000 0:1918ee327afb
       
     1 /****************************************************************************
       
     2 **
       
     3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     4 ** All rights reserved.
       
     5 ** Contact: Nokia Corporation (qt-info@nokia.com)
       
     6 **
       
     7 ** This file is part of the QtXmlPatterns module of the Qt Toolkit.
       
     8 **
       
     9 ** $QT_BEGIN_LICENSE:LGPL$
       
    10 ** No Commercial Usage
       
    11 ** This file contains pre-release code and may not be distributed.
       
    12 ** You may use this file in accordance with the terms and conditions
       
    13 ** contained in the Technology Preview License Agreement accompanying
       
    14 ** this package.
       
    15 **
       
    16 ** GNU Lesser General Public License Usage
       
    17 ** Alternatively, this file may be used under the terms of the GNU Lesser
       
    18 ** General Public License version 2.1 as published by the Free Software
       
    19 ** Foundation and appearing in the file LICENSE.LGPL included in the
       
    20 ** packaging of this file.  Please review the following information to
       
    21 ** ensure the GNU Lesser General Public License version 2.1 requirements
       
    22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
       
    23 **
       
    24 ** In addition, as a special exception, Nokia gives you certain additional
       
    25 ** rights.  These rights are described in the Nokia Qt LGPL Exception
       
    26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
       
    27 **
       
    28 ** If you have questions regarding the use of this file, please contact
       
    29 ** Nokia at qt-info@nokia.com.
       
    30 **
       
    31 **
       
    32 **
       
    33 **
       
    34 **
       
    35 **
       
    36 **
       
    37 **
       
    38 ** $QT_END_LICENSE$
       
    39 **
       
    40 ****************************************************************************/
       
    41 
       
    42 #include <QUrl>
       
    43 
       
    44 #include "qabstracturiresolver.h"
       
    45 
       
    46 QT_BEGIN_NAMESPACE
       
    47 
       
    48 /*!
       
    49   \class QAbstractUriResolver
       
    50   \brief The QAbstractUriResolver class is a callback interface for resolving Uniform Resource Identifiers.
       
    51   \since 4.4
       
    52   \reentrant
       
    53   \ingroup xml-tools
       
    54 
       
    55   A Uniform Resource Identifier (URI) is a string that uniquely
       
    56   identifies a resource. URIs are versatile global identifiers. It is
       
    57   often useful to transform a URI that identifies something logical
       
    58   into a URI that locates something physical (a URL), or to simply map
       
    59   a URI to a different URI. QAbstractUriResolver::resolve() provides
       
    60   this functionality.
       
    61 
       
    62   For example, one could write a QAbstractUriResolver subclass that
       
    63   rewrites library ISBN number URIs as book title URLs, e.g.,
       
    64   \e{urn:isbn:0-345-33973-8} would be rewritten as
       
    65   \e{file:///books/returnOfTheKing.doc}. Or a QAbstractUriResolver
       
    66   subclass could be written for a web browser to let the web browser
       
    67   protect the user's private files by mapping incoming requests for
       
    68   them to null URIs.
       
    69 
       
    70   \sa {http://en.wikipedia.org/wiki/Uniform_Resource_Identifier}
       
    71 */
       
    72 
       
    73 /*!
       
    74   Constructs a QAbstractUriResolver with the specified \a parent.
       
    75  */
       
    76 QAbstractUriResolver::QAbstractUriResolver(QObject *parent) : QObject(parent)
       
    77 {
       
    78 }
       
    79 
       
    80 /*!
       
    81   Destructor.
       
    82  */
       
    83 QAbstractUriResolver::~QAbstractUriResolver()
       
    84 {
       
    85 }
       
    86 
       
    87 /*!
       
    88   \fn QUrl QAbstractUriResolver::resolve(const QUrl &relative, const QUrl &baseURI) const
       
    89 
       
    90   Returns the \a relative URI resolved using the \a baseURI.
       
    91 
       
    92   The caller guarantees that both \a relative and \a baseURI are
       
    93   valid, and that \a baseURI is absolute. \a relative can be relative,
       
    94   absolute, or empty.
       
    95 
       
    96   The returned QUrl can be a default constructed QUrl. If it is not a
       
    97   default constructed QUrl, it will be absolute and valid. If a default
       
    98   constructed QUrl is returned, it means the \a relative URI was not
       
    99   accepted to be resolved.
       
   100 
       
   101   If the reimplemented resolve() function decides it has nothing to do
       
   102   about resolving the \a relative URI, it should simply return the \a
       
   103   relative URI resolved against the \a baseURI, i.e.:
       
   104 
       
   105   \snippet doc/src/snippets/code/src_xmlpatterns_api_qabstracturiresolver.cpp 0
       
   106 
       
   107   \sa QUrl::isRelative(), QUrl::isValid()
       
   108  */
       
   109 
       
   110 QT_END_NAMESPACE
       
   111