pub struct Spec {
pub name: String,
pub display_name: String,
pub spec_type: Option<AttributeValues>,
pub contents: Option<SpecContents>,
pub details: Option<SpecDetails>,
pub source_uri: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub lint_response: Option<LintResponse>,
pub attributes: HashMap<String, AttributeValues>,
pub documentation: Option<Documentation>,
pub parsing_mode: i32,
}
Expand description
Represents a spec associated with an API version in the API Hub. Note that specs of various types can be uploaded, however parsing of details is supported for OpenAPI spec currently.
Fields§
§name: String
Identifier. The name of the spec.
Format:
projects/{project}/locations/{location}/apis/{api}/versions/{version}/specs/{spec}
display_name: String
Required. The display name of the spec. This can contain the file name of the spec.
spec_type: Option<AttributeValues>
Required. The type of spec.
The value should be one of the allowed values defined for
projects/{project}/locations/{location}/attributes/system-spec-type
attribute.
The number of values for this attribute will be based on the
cardinality of the attribute. The same can be retrieved via GetAttribute
API.
Note, this field is mandatory if content is provided.
contents: Option<SpecContents>
Optional. Input only. The contents of the uploaded spec.
details: Option<SpecDetails>
Output only. Details parsed from the spec.
source_uri: String
Optional. The URI of the spec source in case file is uploaded from an external version control system.
create_time: Option<Timestamp>
Output only. The time at which the spec was created.
update_time: Option<Timestamp>
Output only. The time at which the spec was last updated.
lint_response: Option<LintResponse>
Optional. The lint response for the spec.
attributes: HashMap<String, AttributeValues>
Optional. The list of user defined attributes associated with the spec.
The key is the attribute name. It will be of the format:
projects/{project}/locations/{location}/attributes/{attribute}
.
The value is the attribute values associated with the resource.
documentation: Option<Documentation>
Optional. The documentation of the spec.
For OpenAPI spec, this will be populated from externalDocs
in OpenAPI
spec.
parsing_mode: i32
Optional. Input only. Enum specifying the parsing mode for OpenAPI Specification (OAS) parsing.
Implementations§
Source§impl Spec
impl Spec
Sourcepub fn parsing_mode(&self) -> ParsingMode
pub fn parsing_mode(&self) -> ParsingMode
Returns the enum value of parsing_mode
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_parsing_mode(&mut self, value: ParsingMode)
pub fn set_parsing_mode(&mut self, value: ParsingMode)
Sets parsing_mode
to the provided enum value.
Trait Implementations§
Source§impl Message for Spec
impl Message for Spec
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.impl StructuralPartialEq for Spec
Auto Trait Implementations§
impl Freeze for Spec
impl RefUnwindSafe for Spec
impl Send for Spec
impl Sync for Spec
impl Unpin for Spec
impl UnwindSafe for Spec
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request