104 lines
4.1 KiB
Text
104 lines
4.1 KiB
Text
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/*
|
|
* This file is part of the LibreOffice project.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* This file incorporates work covered by the following license notice:
|
|
*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* contributor license agreements. See the NOTICE file distributed
|
|
* with this work for additional information regarding copyright
|
|
* ownership. The ASF licenses this file to you under the Apache
|
|
* License, Version 2.0 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
*/
|
|
|
|
|
|
module com { module sun { module star { module ucb {
|
|
|
|
published interface XContent;
|
|
published interface XContentIdentifier;
|
|
|
|
/** A mapping from a (source) set of XContentIdentifiers to
|
|
another (target) set of XContentIdentifiers.
|
|
|
|
<p>For convenience and performance, mapping between the string
|
|
representations of source/target XContentIdentifiers, as well as mapping
|
|
between XContents identified by source/target
|
|
XContentIdentifiers is also supported.
|
|
|
|
<p>This interface can be useful in cases where the identifiers (and
|
|
associated contents) returned by the various methods of an
|
|
XContentAccess need to be mapped to some other space of
|
|
identifiers (and associated contents).
|
|
|
|
@see XContent
|
|
@see XContentAccess
|
|
@see XContentIdentifier
|
|
*/
|
|
|
|
published interface XContentIdentifierMapping: com::sun::star::uno::XInterface
|
|
{
|
|
/** Map the string representation of an XContentIdentifier.
|
|
|
|
@param Source The string representation of an XContentIdentifier
|
|
from the source set.
|
|
|
|
@returns The string representation of the target set's
|
|
XContentIdentifier corresponding to the source identifier. The
|
|
returned string may be empty if either Source was empty already, or if
|
|
there's no applicable target to map to.
|
|
*/
|
|
string mapContentIdentifierString([in] string Source);
|
|
|
|
/** Map an XContentIdentifier.
|
|
|
|
@param Source An XContentIdentifier from the source set.
|
|
|
|
@returns The target set's XContentIdentifier corresponding to the
|
|
source identifier. The returned XContentIdentifier may be null if
|
|
either Source was null already, or if there's no applicable target to
|
|
map to.
|
|
*/
|
|
XContentIdentifier mapContentIdentifier([in] XContentIdentifier Source);
|
|
|
|
/** Map the XContent identified by an
|
|
XContentIdentifier.
|
|
|
|
@param Source The XContent identified by an XContentIdentifier from
|
|
the source set.
|
|
|
|
@returns The XContent identified by the target set's
|
|
XContentIdentifier corresponding to the source identifier. The
|
|
returned XContent may be null if either Source was null already, or if
|
|
there's no applicable target to map to.
|
|
*/
|
|
XContent mapContent([in] XContent Source);
|
|
|
|
/** Map the content identifiers (or related data) contained in the columns
|
|
of a com::sun::star::sdbc::XRow.
|
|
|
|
@param Value On input, a sequence of anys corresponding to the columns
|
|
of the XRow (the first column goes into the zeroth position of the
|
|
sequence, and so on). On output, the same sequence, but with the
|
|
entries mapped as necessary. This is an inout parameter rather than a
|
|
combination of in parameter and return value for performance reasons
|
|
(assuming that in most cases most elements in the input sequence will
|
|
be returned unmodified).
|
|
|
|
@returns `TRUE` if any of the columns contain data that (potentially)
|
|
needs mapping (though maybe no mapping occurred for the concrete input
|
|
data of this call). This information can be useful to decide whether,
|
|
for another row, a call to this function is at all necessary.
|
|
*/
|
|
boolean mapRow([inout] sequence< any > Value);
|
|
};
|
|
|
|
|
|
}; }; }; };
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|