public sealed class Documentation : IMessage<Documentation>, IEquatable<Documentation>, IDeepCloneable<Documentation>, IBufferMessage, IMessage
Documentation
provides the information for describing a service.
Example: <pre><code>documentation: summary: > The Google Calendar API gives access to most calendar features. pages:
- name: Overview content: (== include google/foo/overview.md ==)
- name: Tutorial
content: (== include google/foo/tutorial.md ==)
subpages:
- name: Java content: (== include google/foo/tutorial_java.md ==) rules:
- selector: google.calendar.Calendar.Get description: > ...
- selector: google.calendar.Calendar.Put description: > ... </code></pre> Documentation is provided in markdown syntax. In addition to standard markdown features, definition lists, tables and fenced code blocks are supported. Section headers can be provided and are interpreted relative to the section nesting of the context where a documentation fragment is embedded.
Documentation from the IDL is merged with documentation defined via the config at normalization time, where documentation provided by config rules overrides IDL provided.
A number of constructs specific to the API platform are supported in documentation text.
In order to reference a proto element, the following notation can be used: <pre><code>[fully.qualified.proto.name][]</code></pre> To override the display text used for the link, this can be used: <pre><code>[display text][fully.qualified.proto.name]</code></pre> Text can be excluded from doc using the following notation: <pre><code>(-- internal comment --)</code></pre>
A few directives are available in documentation. Note that
directives must appear on a single line to be properly
identified. The include
directive includes a markdown file from
an external source:
<pre><code>(== include path/to/file ==)</code></pre>
The resource_for
directive marks a message to be the resource of
a collection in REST view. If it is not specified, tools attempt
to infer the resource from the operations in a collection:
<pre><code>(== resource_for v1.shelves.books ==)</code></pre>
The directive suppress_warning
does not directly affect documentation
and is documented together with service config validation.
Implements
IMessageDocumentation, IEquatableDocumentation, IDeepCloneableDocumentation, IBufferMessage, IMessageNamespace
Google.ApiAssembly
Google.Api.CommonProtos.dll
Constructors
Documentation()
public Documentation()
Documentation(Documentation)
public Documentation(Documentation other)
Parameter | |
---|---|
Name | Description |
other |
Documentation |
Fields
DocumentationRootUrlFieldNumber
public const int DocumentationRootUrlFieldNumber = 4
Field number for the "documentation_root_url" field.
Field Value | |
---|---|
Type | Description |
int |
OverviewFieldNumber
public const int OverviewFieldNumber = 2
Field number for the "overview" field.
Field Value | |
---|---|
Type | Description |
int |
PagesFieldNumber
public const int PagesFieldNumber = 5
Field number for the "pages" field.
Field Value | |
---|---|
Type | Description |
int |
RulesFieldNumber
public const int RulesFieldNumber = 3
Field number for the "rules" field.
Field Value | |
---|---|
Type | Description |
int |
ServiceRootUrlFieldNumber
public const int ServiceRootUrlFieldNumber = 6
Field number for the "service_root_url" field.
Field Value | |
---|---|
Type | Description |
int |
SummaryFieldNumber
public const int SummaryFieldNumber = 1
Field number for the "summary" field.
Field Value | |
---|---|
Type | Description |
int |
Properties
Descriptor
public static MessageDescriptor Descriptor { get; }
Property Value | |
---|---|
Type | Description |
MessageDescriptor |
DocumentationRootUrl
public string DocumentationRootUrl { get; set; }
The URL to the root of documentation.
Property Value | |
---|---|
Type | Description |
string |
Overview
public string Overview { get; set; }
Declares a single overview page. For example: <pre><code>documentation: summary: ... overview: (== include overview.md ==) </code></pre> This is a shortcut for the following declaration (using pages style): <pre><code>documentation: summary: ... pages:
- name: Overview
content: (== include overview.md ==)
</code></pre>
Note: you cannot specify both
overview
field andpages
field.
Property Value | |
---|---|
Type | Description |
string |
Pages
public RepeatedField<Page> Pages { get; }
The top level pages for the documentation set.
Property Value | |
---|---|
Type | Description |
RepeatedFieldPage |
Parser
public static MessageParser<Documentation> Parser { get; }
Property Value | |
---|---|
Type | Description |
MessageParserDocumentation |
Rules
public RepeatedField<DocumentationRule> Rules { get; }
A list of documentation rules that apply to individual API elements.
NOTE: All service configuration rules follow "last one wins" order.
Property Value | |
---|---|
Type | Description |
RepeatedFieldDocumentationRule |
ServiceRootUrl
public string ServiceRootUrl { get; set; }
Specifies the service root url if the default one (the service name from the yaml file) is not suitable. This can be seen in any fully specified service urls as well as sections that show a base that other urls are relative to.
Property Value | |
---|---|
Type | Description |
string |
Summary
public string Summary { get; set; }
A short description of what the service does. The summary must be plain
text. It becomes the overview of the service displayed in Google Cloud
Console.
NOTE: This field is equivalent to the standard field description
.
Property Value | |
---|---|
Type | Description |
string |
Methods
CalculateSize()
public int CalculateSize()
Calculates the size of this message in Protocol Buffer wire format, in bytes.
Returns | |
---|---|
Type | Description |
int |
The number of bytes required to write this message to a coded output stream. |
Clone()
public Documentation Clone()
Creates a deep clone of this object.
Returns | |
---|---|
Type | Description |
Documentation |
A deep clone of this object. |
Equals(Documentation)
public bool Equals(Documentation other)
Parameter | |
---|---|
Name | Description |
other |
Documentation |
Returns | |
---|---|
Type | Description |
bool |
Equals(object)
public override bool Equals(object other)
Parameter | |
---|---|
Name | Description |
other |
object |
Returns | |
---|---|
Type | Description |
bool |
GetHashCode()
public override int GetHashCode()
Returns | |
---|---|
Type | Description |
int |
MergeFrom(Documentation)
public void MergeFrom(Documentation other)
Merges the given message into this one.
Parameter | |
---|---|
Name | Description |
other |
Documentation |
See the user guide for precise merge semantics.
MergeFrom(CodedInputStream)
public void MergeFrom(CodedInputStream input)
Merges the data from the specified coded input stream with the current message.
Parameter | |
---|---|
Name | Description |
input |
CodedInputStream |
See the user guide for precise merge semantics.
ToString()
public override string ToString()
Returns | |
---|---|
Type | Description |
string |
WriteTo(CodedOutputStream)
public void WriteTo(CodedOutputStream output)
Writes the data to the given coded output stream.
Parameter | |
---|---|
Name | Description |
output |
CodedOutputStream Coded output stream to write the data to. Must not be null. |