pub struct AnnotationServiceV1Client<T> { /* private fields */ }
Expand description

This service provides storage and positional retrieval of genomic reference annotations, including variant annotations.

Implementations§

source§

impl<T> AnnotationServiceV1Client<T>
where T: GrpcService<BoxBody>, T::Error: Into<StdError>, T::ResponseBody: Body<Data = Bytes> + Send + 'static, <T::ResponseBody as Body>::Error: Into<StdError> + Send,

source

pub fn new(inner: T) -> Self

source

pub fn with_origin(inner: T, origin: Uri) -> Self

source

pub fn with_interceptor<F>( inner: T, interceptor: F ) -> AnnotationServiceV1Client<InterceptedService<T, F>>
where F: Interceptor, T::ResponseBody: Default, T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>, <T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,

source

pub fn send_compressed(self, encoding: CompressionEncoding) -> Self

Compress requests with the given encoding.

This requires the server to support it otherwise it might respond with an error.

source

pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self

Enable decompressing responses.

source

pub fn max_decoding_message_size(self, limit: usize) -> Self

Limits the maximum size of a decoded message.

Default: 4MB

source

pub fn max_encoding_message_size(self, limit: usize) -> Self

Limits the maximum size of an encoded message.

Default: usize::MAX

source

pub async fn create_annotation_set( &mut self, request: impl IntoRequest<CreateAnnotationSetRequest> ) -> Result<Response<AnnotationSet>, Status>

Creates a new annotation set. Caller must have WRITE permission for the associated dataset.

The following fields are required:

  • [datasetId][google.genomics.v1.AnnotationSet.dataset_id]
  • [referenceSetId][google.genomics.v1.AnnotationSet.reference_set_id]

All other fields may be optionally specified, unless documented as being server-generated (for example, the id field).

source

pub async fn get_annotation_set( &mut self, request: impl IntoRequest<GetAnnotationSetRequest> ) -> Result<Response<AnnotationSet>, Status>

Gets an annotation set. Caller must have READ permission for the associated dataset.

source

pub async fn update_annotation_set( &mut self, request: impl IntoRequest<UpdateAnnotationSetRequest> ) -> Result<Response<AnnotationSet>, Status>

Updates an annotation set. The update must respect all mutability restrictions and other invariants described on the annotation set resource. Caller must have WRITE permission for the associated dataset.

source

pub async fn delete_annotation_set( &mut self, request: impl IntoRequest<DeleteAnnotationSetRequest> ) -> Result<Response<()>, Status>

Deletes an annotation set. Caller must have WRITE permission for the associated annotation set.

source

pub async fn search_annotation_sets( &mut self, request: impl IntoRequest<SearchAnnotationSetsRequest> ) -> Result<Response<SearchAnnotationSetsResponse>, Status>

Searches for annotation sets that match the given criteria. Annotation sets are returned in an unspecified order. This order is consistent, such that two queries for the same content (regardless of page size) yield annotation sets in the same order across their respective streams of paginated responses. Caller must have READ permission for the queried datasets.

source

pub async fn create_annotation( &mut self, request: impl IntoRequest<CreateAnnotationRequest> ) -> Result<Response<Annotation>, Status>

Creates a new annotation. Caller must have WRITE permission for the associated annotation set.

The following fields are required:

  • [annotationSetId][google.genomics.v1.Annotation.annotation_set_id]
  • [referenceName][google.genomics.v1.Annotation.reference_name] or [referenceId][google.genomics.v1.Annotation.reference_id]
§Transcripts

For annotations of type TRANSCRIPT, the following fields of [transcript][google.genomics.v1.Annotation.transcript] must be provided:

  • [exons.start][google.genomics.v1.Transcript.Exon.start]
  • [exons.end][google.genomics.v1.Transcript.Exon.end]

All other fields may be optionally specified, unless documented as being server-generated (for example, the id field). The annotated range must be no longer than 100Mbp (mega base pairs). See the [Annotation resource][google.genomics.v1.Annotation] for additional restrictions on each field.

source

pub async fn batch_create_annotations( &mut self, request: impl IntoRequest<BatchCreateAnnotationsRequest> ) -> Result<Response<BatchCreateAnnotationsResponse>, Status>

Creates one or more new annotations atomically. All annotations must belong to the same annotation set. Caller must have WRITE permission for this annotation set. For optimal performance, batch positionally adjacent annotations together.

If the request has a systemic issue, such as an attempt to write to an inaccessible annotation set, the entire RPC will fail accordingly. For lesser data issues, when possible an error will be isolated to the corresponding batch entry in the response; the remaining well formed annotations will be created normally.

For details on the requirements for each individual annotation resource, see [CreateAnnotation][google.genomics.v1.AnnotationServiceV1.CreateAnnotation].

source

pub async fn get_annotation( &mut self, request: impl IntoRequest<GetAnnotationRequest> ) -> Result<Response<Annotation>, Status>

Gets an annotation. Caller must have READ permission for the associated annotation set.

source

pub async fn update_annotation( &mut self, request: impl IntoRequest<UpdateAnnotationRequest> ) -> Result<Response<Annotation>, Status>

Updates an annotation. Caller must have WRITE permission for the associated dataset.

source

pub async fn delete_annotation( &mut self, request: impl IntoRequest<DeleteAnnotationRequest> ) -> Result<Response<()>, Status>

Deletes an annotation. Caller must have WRITE permission for the associated annotation set.

source

pub async fn search_annotations( &mut self, request: impl IntoRequest<SearchAnnotationsRequest> ) -> Result<Response<SearchAnnotationsResponse>, Status>

Searches for annotations that match the given criteria. Results are ordered by genomic coordinate (by reference sequence, then position). Annotations with equivalent genomic coordinates are returned in an unspecified order. This order is consistent, such that two queries for the same content (regardless of page size) yield annotations in the same order across their respective streams of paginated responses. Caller must have READ permission for the queried annotation sets.

Trait Implementations§

source§

impl<T: Clone> Clone for AnnotationServiceV1Client<T>

source§

fn clone(&self) -> AnnotationServiceV1Client<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T: Debug> Debug for AnnotationServiceV1Client<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more