This file is indexed.

/usr/share/doc/content-hub/cpp/html/index.html is in libcontent-hub-doc 0.1+16.04.20160309-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Content Hub: Content Management &amp; Exchange</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Content Hub
   &#160;<span id="projectnumber">0.0.1</span>
   </div>
   <div id="projectbrief">A session-wide content-exchange service</div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('index.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">Content Management &amp; Exchange </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>Unity and the overall Ubuntu experience put heavy emphasis on the notion of content, with Unity's dash offering streamlined access to arbitrary content, both local to the device or online. More to this, Unity's dash is the primary way of surfacing content on mobile form factors without the need to access individual applications and their respective content silos. The content-hub deals with application-specific content management and implements an architecture that allows an app to define its own content silo, exchange content with other applications/the system, and a way to provide the user with content picking functionality.</p>
<p>To ease conversations, we start over with a set of definitions:</p>
<ul>
<li>Content item: A content item is an entity that consists of meta-data and data. E.g., an image is a content item, where the actual pixels are the data, and information like size, image format, bit depth, location etc. is considered meta data. <dl class="section see"><dt>See also</dt><dd><a class="el" href="classcom_1_1ubuntu_1_1content_1_1Item.html">com::ubuntu::content::Item</a>.</dd></dl>
</li>
<li>Content types: A set of well-known content types. E.g., images or music files. <dl class="section see"><dt>See also</dt><dd><a class="el" href="classcom_1_1ubuntu_1_1content_1_1Type.html">com::ubuntu::content::Type</a>.</dd></dl>
</li>
<li>Content set: A set of unique content items. Can be considered a content item itself, e.g., in the case of playlists.</li>
<li>Content owner: The unique owner of a content item. A content item has to be owned by exactly one app. <dl class="section see"><dt>See also</dt><dd><a class="el" href="classcom_1_1ubuntu_1_1content_1_1Peer.html">com::ubuntu::content::Peer</a></dd></dl>
</li>
<li>Content store: A container (think of it as a top-level folder in the filesystem) that contains content items of a certain type. Different stores exist for different scopes, where scope refers to either system-wide, user-wide or app-specific storage locations. <dl class="section see"><dt>See also</dt><dd><a class="el" href="classcom_1_1ubuntu_1_1content_1_1Store.html">com::ubuntu::content::Store</a>, <a class="el" href="namespacecom_1_1ubuntu_1_1content.html#ac0475e71d5f6e81910de795db89ea4ee">com::ubuntu::content::Scope</a></dd></dl>
</li>
<li>Content transfer: Transferring content item/s to and from a source or destination. A transfer is uniquely defined by:<ul>
<li>The content source</li>
<li>The content destination</li>
<li>The transfer direction, either import or export</li>
<li>The set of items that should be exchanged <dl class="section see"><dt>See also</dt><dd><a class="el" href="classcom_1_1ubuntu_1_1content_1_1Transfer.html">com::ubuntu::content::Transfer</a>, com::ubuntu::content::Hub::create_import_for_type_from_peer</dd></dl>
</li>
</ul>
</li>
<li>Content picking: Operation that allows a user to select content for subsequent import from a content source (e.g., an application). The content source is responsible for providing a UI to the user.</li>
</ul>
<h2>Architectural Overview </h2>
<p>The architecture enforces complete application isolation, both in terms of content separation, sandboxing/confinement and in terms of the application lifecycle. As we cannot assume that two apps that want to exchange content are running at the same time, a system-level component needs to mediate and control the content exchange operation, making sure that neither app instance assumes the existence of the other one. We refer to this component as the content hub. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classcom_1_1ubuntu_1_1content_1_1Hub.html">com::ubuntu::content::Hub</a></dd></dl>
<h2>Example usage - Importing Pictures </h2>
<div class="fragment"><div class="line">            <span class="keyword">auto</span> hub = cuc::Hub::Client::instance();</div><div class="line">            <span class="keyword">auto</span> transfer = hub-&gt;create_import_from_peer(</div><div class="line">                hub-&gt;default_source_for_type(cuc::Type::Known::pictures()));</div><div class="line">            ASSERT_TRUE(transfer != <span class="keyword">nullptr</span>);</div><div class="line">            EXPECT_EQ(cuc::Transfer::created, transfer-&gt;state());</div><div class="line">            ASSERT_FALSE(hub-&gt;has_pending(transfer-&gt;destination()));</div><div class="line">            EXPECT_TRUE(transfer-&gt;setSelectionType(cuc::Transfer::SelectionType::multiple));</div><div class="line">            ASSERT_EQ(cuc::Transfer::SelectionType::multiple, transfer-&gt;selectionType());</div><div class="line">            transfer-&gt;setStore(<span class="keyword">new</span> cuc::Store{store_dir.path()});</div><div class="line">            EXPECT_TRUE(transfer-&gt;start());</div><div class="line">            EXPECT_EQ(cuc::Transfer::initiated, transfer-&gt;state());</div><div class="line">            ASSERT_TRUE(hub-&gt;has_pending(transfer-&gt;destination()));</div><div class="line">            EXPECT_TRUE(transfer-&gt;setSelectionType(cuc::Transfer::SelectionType::single));</div><div class="line">            ASSERT_EQ(cuc::Transfer::SelectionType::multiple, transfer-&gt;selectionType());</div><div class="line">            EXPECT_TRUE(transfer-&gt;charge(source_items));</div><div class="line">            EXPECT_EQ(cuc::Transfer::charged, transfer-&gt;state());</div><div class="line">            EXPECT_EQ(expected_items, transfer-&gt;collect());</div></div><!-- fragment --></div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Wed Mar 9 2016 14:03:08 for Content Hub by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>