Class CheckDebugTrace

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.authzed.api.v1.CheckDebugTrace
All Implemented Interfaces:
CheckDebugTraceOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

public final class CheckDebugTrace extends com.google.protobuf.GeneratedMessage implements CheckDebugTraceOrBuilder
 CheckDebugTrace is a recursive trace of the requests made for resolving a CheckPermission
 API call.
 
Protobuf type authzed.api.v1.CheckDebugTrace
See Also:
  • Field Details

    • RESOURCE_FIELD_NUMBER

      public static final int RESOURCE_FIELD_NUMBER
      See Also:
    • PERMISSION_FIELD_NUMBER

      public static final int PERMISSION_FIELD_NUMBER
      See Also:
    • PERMISSION_TYPE_FIELD_NUMBER

      public static final int PERMISSION_TYPE_FIELD_NUMBER
      See Also:
    • SUBJECT_FIELD_NUMBER

      public static final int SUBJECT_FIELD_NUMBER
      See Also:
    • RESULT_FIELD_NUMBER

      public static final int RESULT_FIELD_NUMBER
      See Also:
    • CAVEAT_EVALUATION_INFO_FIELD_NUMBER

      public static final int CAVEAT_EVALUATION_INFO_FIELD_NUMBER
      See Also:
    • DURATION_FIELD_NUMBER

      public static final int DURATION_FIELD_NUMBER
      See Also:
    • WAS_CACHED_RESULT_FIELD_NUMBER

      public static final int WAS_CACHED_RESULT_FIELD_NUMBER
      See Also:
    • SUB_PROBLEMS_FIELD_NUMBER

      public static final int SUB_PROBLEMS_FIELD_NUMBER
      See Also:
    • OPTIONAL_EXPIRES_AT_FIELD_NUMBER

      public static final int OPTIONAL_EXPIRES_AT_FIELD_NUMBER
      See Also:
    • TRACE_OPERATION_ID_FIELD_NUMBER

      public static final int TRACE_OPERATION_ID_FIELD_NUMBER
      See Also:
    • SOURCE_FIELD_NUMBER

      public static final int SOURCE_FIELD_NUMBER
      See Also:
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • getResolutionCase

      public CheckDebugTrace.ResolutionCase getResolutionCase()
      Specified by:
      getResolutionCase in interface CheckDebugTraceOrBuilder
    • hasResource

      public boolean hasResource()
       resource holds the resource on which the Check was performed.
       for batched calls, the object_id field contains a comma-separated list of object IDs
       for all the resources checked in the batch.
       
      .authzed.api.v1.ObjectReference resource = 1 [(.validate.rules) = { ... }
      Specified by:
      hasResource in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the resource field is set.
    • getResource

      public ObjectReference getResource()
       resource holds the resource on which the Check was performed.
       for batched calls, the object_id field contains a comma-separated list of object IDs
       for all the resources checked in the batch.
       
      .authzed.api.v1.ObjectReference resource = 1 [(.validate.rules) = { ... }
      Specified by:
      getResource in interface CheckDebugTraceOrBuilder
      Returns:
      The resource.
    • getResourceOrBuilder

      public ObjectReferenceOrBuilder getResourceOrBuilder()
       resource holds the resource on which the Check was performed.
       for batched calls, the object_id field contains a comma-separated list of object IDs
       for all the resources checked in the batch.
       
      .authzed.api.v1.ObjectReference resource = 1 [(.validate.rules) = { ... }
      Specified by:
      getResourceOrBuilder in interface CheckDebugTraceOrBuilder
    • getPermission

      public String getPermission()
       permission holds the name of the permission or relation on which the Check was performed.
       
      string permission = 2;
      Specified by:
      getPermission in interface CheckDebugTraceOrBuilder
      Returns:
      The permission.
    • getPermissionBytes

      public com.google.protobuf.ByteString getPermissionBytes()
       permission holds the name of the permission or relation on which the Check was performed.
       
      string permission = 2;
      Specified by:
      getPermissionBytes in interface CheckDebugTraceOrBuilder
      Returns:
      The bytes for permission.
    • getPermissionTypeValue

      public int getPermissionTypeValue()
       permission_type holds information indicating whether it was a permission or relation.
       
      .authzed.api.v1.CheckDebugTrace.PermissionType permission_type = 3 [(.validate.rules) = { ... }
      Specified by:
      getPermissionTypeValue in interface CheckDebugTraceOrBuilder
      Returns:
      The enum numeric value on the wire for permissionType.
    • getPermissionType

      public CheckDebugTrace.PermissionType getPermissionType()
       permission_type holds information indicating whether it was a permission or relation.
       
      .authzed.api.v1.CheckDebugTrace.PermissionType permission_type = 3 [(.validate.rules) = { ... }
      Specified by:
      getPermissionType in interface CheckDebugTraceOrBuilder
      Returns:
      The permissionType.
    • hasSubject

      public boolean hasSubject()
       subject holds the subject on which the Check was performed. This will be static across all calls within
       the same Check tree.
       
      .authzed.api.v1.SubjectReference subject = 4 [(.validate.rules) = { ... }
      Specified by:
      hasSubject in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the subject field is set.
    • getSubject

      public SubjectReference getSubject()
       subject holds the subject on which the Check was performed. This will be static across all calls within
       the same Check tree.
       
      .authzed.api.v1.SubjectReference subject = 4 [(.validate.rules) = { ... }
      Specified by:
      getSubject in interface CheckDebugTraceOrBuilder
      Returns:
      The subject.
    • getSubjectOrBuilder

      public SubjectReferenceOrBuilder getSubjectOrBuilder()
       subject holds the subject on which the Check was performed. This will be static across all calls within
       the same Check tree.
       
      .authzed.api.v1.SubjectReference subject = 4 [(.validate.rules) = { ... }
      Specified by:
      getSubjectOrBuilder in interface CheckDebugTraceOrBuilder
    • getResultValue

      public int getResultValue()
       result holds the result of the Check call.
       
      .authzed.api.v1.CheckDebugTrace.Permissionship result = 5 [(.validate.rules) = { ... }
      Specified by:
      getResultValue in interface CheckDebugTraceOrBuilder
      Returns:
      The enum numeric value on the wire for result.
    • getResult

      public CheckDebugTrace.Permissionship getResult()
       result holds the result of the Check call.
       
      .authzed.api.v1.CheckDebugTrace.Permissionship result = 5 [(.validate.rules) = { ... }
      Specified by:
      getResult in interface CheckDebugTraceOrBuilder
      Returns:
      The result.
    • hasCaveatEvaluationInfo

      public boolean hasCaveatEvaluationInfo()
       caveat_evaluation_info holds information about the caveat evaluated for this step of the trace.
       
      .authzed.api.v1.CaveatEvalInfo caveat_evaluation_info = 8;
      Specified by:
      hasCaveatEvaluationInfo in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the caveatEvaluationInfo field is set.
    • getCaveatEvaluationInfo

      public CaveatEvalInfo getCaveatEvaluationInfo()
       caveat_evaluation_info holds information about the caveat evaluated for this step of the trace.
       
      .authzed.api.v1.CaveatEvalInfo caveat_evaluation_info = 8;
      Specified by:
      getCaveatEvaluationInfo in interface CheckDebugTraceOrBuilder
      Returns:
      The caveatEvaluationInfo.
    • getCaveatEvaluationInfoOrBuilder

      public CaveatEvalInfoOrBuilder getCaveatEvaluationInfoOrBuilder()
       caveat_evaluation_info holds information about the caveat evaluated for this step of the trace.
       
      .authzed.api.v1.CaveatEvalInfo caveat_evaluation_info = 8;
      Specified by:
      getCaveatEvaluationInfoOrBuilder in interface CheckDebugTraceOrBuilder
    • hasDuration

      public boolean hasDuration()
       duration holds the time spent executing this Check operation.
       
      .google.protobuf.Duration duration = 9;
      Specified by:
      hasDuration in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the duration field is set.
    • getDuration

      public com.google.protobuf.Duration getDuration()
       duration holds the time spent executing this Check operation.
       
      .google.protobuf.Duration duration = 9;
      Specified by:
      getDuration in interface CheckDebugTraceOrBuilder
      Returns:
      The duration.
    • getDurationOrBuilder

      public com.google.protobuf.DurationOrBuilder getDurationOrBuilder()
       duration holds the time spent executing this Check operation.
       
      .google.protobuf.Duration duration = 9;
      Specified by:
      getDurationOrBuilder in interface CheckDebugTraceOrBuilder
    • hasWasCachedResult

      public boolean hasWasCachedResult()
       was_cached_result, if true, indicates that the result was found in the cache and returned directly.
       
      bool was_cached_result = 6;
      Specified by:
      hasWasCachedResult in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the wasCachedResult field is set.
    • getWasCachedResult

      public boolean getWasCachedResult()
       was_cached_result, if true, indicates that the result was found in the cache and returned directly.
       
      bool was_cached_result = 6;
      Specified by:
      getWasCachedResult in interface CheckDebugTraceOrBuilder
      Returns:
      The wasCachedResult.
    • hasSubProblems

      public boolean hasSubProblems()
       sub_problems holds the sub problems that were executed to resolve the answer to this Check. An empty list
       and a permissionship of PERMISSIONSHIP_HAS_PERMISSION indicates the subject was found within this relation.
       
      .authzed.api.v1.CheckDebugTrace.SubProblems sub_problems = 7;
      Specified by:
      hasSubProblems in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the subProblems field is set.
    • getSubProblems

      public CheckDebugTrace.SubProblems getSubProblems()
       sub_problems holds the sub problems that were executed to resolve the answer to this Check. An empty list
       and a permissionship of PERMISSIONSHIP_HAS_PERMISSION indicates the subject was found within this relation.
       
      .authzed.api.v1.CheckDebugTrace.SubProblems sub_problems = 7;
      Specified by:
      getSubProblems in interface CheckDebugTraceOrBuilder
      Returns:
      The subProblems.
    • getSubProblemsOrBuilder

      public CheckDebugTrace.SubProblemsOrBuilder getSubProblemsOrBuilder()
       sub_problems holds the sub problems that were executed to resolve the answer to this Check. An empty list
       and a permissionship of PERMISSIONSHIP_HAS_PERMISSION indicates the subject was found within this relation.
       
      .authzed.api.v1.CheckDebugTrace.SubProblems sub_problems = 7;
      Specified by:
      getSubProblemsOrBuilder in interface CheckDebugTraceOrBuilder
    • hasOptionalExpiresAt

      public boolean hasOptionalExpiresAt()
       optional_expires_at is the time at which at least one of the relationships used to
       compute this result, expires (if any). This is *not* related to the caching window.
       
      .google.protobuf.Timestamp optional_expires_at = 10;
      Specified by:
      hasOptionalExpiresAt in interface CheckDebugTraceOrBuilder
      Returns:
      Whether the optionalExpiresAt field is set.
    • getOptionalExpiresAt

      public com.google.protobuf.Timestamp getOptionalExpiresAt()
       optional_expires_at is the time at which at least one of the relationships used to
       compute this result, expires (if any). This is *not* related to the caching window.
       
      .google.protobuf.Timestamp optional_expires_at = 10;
      Specified by:
      getOptionalExpiresAt in interface CheckDebugTraceOrBuilder
      Returns:
      The optionalExpiresAt.
    • getOptionalExpiresAtOrBuilder

      public com.google.protobuf.TimestampOrBuilder getOptionalExpiresAtOrBuilder()
       optional_expires_at is the time at which at least one of the relationships used to
       compute this result, expires (if any). This is *not* related to the caching window.
       
      .google.protobuf.Timestamp optional_expires_at = 10;
      Specified by:
      getOptionalExpiresAtOrBuilder in interface CheckDebugTraceOrBuilder
    • getTraceOperationId

      public String getTraceOperationId()
       trace_operation_id is a unique identifier for this trace's operation, that will
       be shared for all traces created for the same check operation in SpiceDB.
      
       In cases where SpiceDB performs automatic batching of subproblems, this ID can be used
       to correlate work that was shared across multiple traces.
      
       This identifier is generated by SpiceDB, is to be considered opaque to the caller
       and only guaranteed to be unique within the same overall Check or CheckBulk operation.
       
      string trace_operation_id = 11;
      Specified by:
      getTraceOperationId in interface CheckDebugTraceOrBuilder
      Returns:
      The traceOperationId.
    • getTraceOperationIdBytes

      public com.google.protobuf.ByteString getTraceOperationIdBytes()
       trace_operation_id is a unique identifier for this trace's operation, that will
       be shared for all traces created for the same check operation in SpiceDB.
      
       In cases where SpiceDB performs automatic batching of subproblems, this ID can be used
       to correlate work that was shared across multiple traces.
      
       This identifier is generated by SpiceDB, is to be considered opaque to the caller
       and only guaranteed to be unique within the same overall Check or CheckBulk operation.
       
      string trace_operation_id = 11;
      Specified by:
      getTraceOperationIdBytes in interface CheckDebugTraceOrBuilder
      Returns:
      The bytes for traceOperationId.
    • getSource

      public String getSource()
       source holds the source of the result. It is of the form:
       `<sourcetype>:<sourceid>`, where sourcetype can be, among others:
       `spicedb`, `materialize`, etc.
       
      string source = 12;
      Specified by:
      getSource in interface CheckDebugTraceOrBuilder
      Returns:
      The source.
    • getSourceBytes

      public com.google.protobuf.ByteString getSourceBytes()
       source holds the source of the result. It is of the form:
       `<sourcetype>:<sourceid>`, where sourcetype can be, among others:
       `spicedb`, `materialize`, etc.
       
      string source = 12;
      Specified by:
      getSourceBytes in interface CheckDebugTraceOrBuilder
      Returns:
      The bytes for source.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static CheckDebugTrace parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static CheckDebugTrace parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static CheckDebugTrace parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static CheckDebugTrace parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static CheckDebugTrace parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static CheckDebugTrace parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static CheckDebugTrace parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static CheckDebugTrace parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static CheckDebugTrace parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static CheckDebugTrace parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static CheckDebugTrace parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static CheckDebugTrace parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public CheckDebugTrace.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static CheckDebugTrace.Builder newBuilder()
    • newBuilder

      public static CheckDebugTrace.Builder newBuilder(CheckDebugTrace prototype)
    • toBuilder

      public CheckDebugTrace.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected CheckDebugTrace.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static CheckDebugTrace getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<CheckDebugTrace> parser()
    • getParserForType

      public com.google.protobuf.Parser<CheckDebugTrace> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public CheckDebugTrace getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder