26#include <rtl/ustrbuf.hxx>
27#include <rtl/ustring.hxx>
33UriReference::UriReference(
34 OUString scheme,
bool bHasAuthority,
35 OUString
const & authority, OUString path,
36 bool bHasQuery, OUString
const & query):
37 m_path(
std::move(path)),
38 m_scheme(
std::move(scheme)),
39 m_authority(authority),
41 m_hasAuthority(bHasAuthority),
42 m_hasQuery(bHasQuery),
45 assert(authority.isEmpty() || bHasAuthority);
46 assert(
query.isEmpty() || bHasQuery);
54 OUStringBuffer buf(128);
62 return buf.makeStringAndClear();
75 return buf.makeStringAndClear();
108 sal_Int32
n =
m_path[0] ==
'/' ? 0 : 1;
109 for (sal_Int32
i = 0;; ++
i) {
124 for (sal_Int32
i =
m_path[0] ==
'/' ? 1 : 0;; ++
i) {
126 sal_Int32 j =
m_path.indexOf(
'/',
i);
OUString getSchemeSpecificPart()
const OUString & getAuthority() const
sal_Int32 getPathSegmentCount()
void setFragment(OUString const &fragment)
void appendSchemeSpecificPart(OUStringBuffer &buffer) const
OUString getPathSegment(sal_Int32 index)
bool hasAuthority() const
const OUString & getQuery() const
OUString getUriReference()
store_handle_type *SAL_CALL query(OStoreObject *pHandle, store_handle_type *)