pub enum PublishRejection {
Conflicts {
conflicts: Vec<PublishConflict>,
},
NeedsConfirmation {
risky_entities: Vec<ChangesetEntitySummary>,
},
GlobalAdminOnlyExerciseServices {
service_names: Vec<String>,
},
Blockers {
blockers: Vec<PublishBlocker>,
},
ChangedSinceReview(ChangedSinceReview),
NotOpen {
status: AgentChangesetStatus,
},
SaveFailed {
entity: Option<EntityRef>,
message: String,
},
}Expand description
Why a publish was refused. Nothing was written.
Variants§
Conflicts
Live entities changed since they were staged; their staged edits must be redone on the current live state.
Fields
§
conflicts: Vec<PublishConflict>NeedsConfirmation
The changeset holds risky changes, which only the user can publish on the review page.
Fields
§
risky_entities: Vec<ChangesetEntitySummary>GlobalAdminOnlyExerciseServices
Pages would add tasks of exercise services only global admins may add.
Blockers
The course with the staged changes would break these rules publishing relies on, which the live course doesn’t.
Fields
§
blockers: Vec<PublishBlocker>ChangedSinceReview(ChangedSinceReview)
The staged changes changed after the revision the publish was based on.
NotOpen
The changeset was published, discarded or expired before.
Fields
§
status: AgentChangesetStatusSaveFailed
A save path refused what was staged for entity; None when the refusal came only once
every write was in. message is the save path’s own, in English.
Trait Implementations§
Source§impl Clone for PublishRejection
impl Clone for PublishRejection
Source§fn clone(&self) -> PublishRejection
fn clone(&self) -> PublishRejection
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ComposeSchema for PublishRejection
impl ComposeSchema for PublishRejection
Source§impl Debug for PublishRejection
impl Debug for PublishRejection
Source§impl<'de> Deserialize<'de> for PublishRejection
impl<'de> Deserialize<'de> for PublishRejection
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<LockRejection> for PublishRejection
impl From<LockRejection> for PublishRejection
Source§fn from(rejection: LockRejection) -> Self
fn from(rejection: LockRejection) -> Self
Converts to this type from the input type.
Source§impl PartialEq for PublishRejection
impl PartialEq for PublishRejection
Source§impl Serialize for PublishRejection
impl Serialize for PublishRejection
Source§impl ToSchema for PublishRejection
impl ToSchema for PublishRejection
impl StructuralPartialEq for PublishRejection
Auto Trait Implementations§
impl Freeze for PublishRejection
impl RefUnwindSafe for PublishRejection
impl Send for PublishRejection
impl Sync for PublishRejection
impl Unpin for PublishRejection
impl UnsafeUnpin for PublishRejection
impl UnwindSafe for PublishRejection
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ServiceExt for T
impl<T> ServiceExt for T
§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
Decompress response bodies. Read more
§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more