test_class.declarator: DIRECTION = MessageDirection.TO
test_class.modifier: private static final
test_class.original_string: private static final MessageDirection DIRECTION = MessageDirection.TO;
test_class.type: MessageDirection
test_class.var_name: DIRECTION
test_class.declarator: THING_ID = ThingId.of("test.ns", "theThingId")
test_class.modifier: private static final
test_class.original_string: private static final ThingId THING_ID = ThingId.of("test.ns", "theThingId");
test_class.type: ThingId
test_class.var_name: THING_ID
test_class.declarator: SUBJECT = KnownMessageSubjects.CLAIM_SUBJECT
test_class.modifier: private static final
test_class.original_string: private static final String SUBJECT = KnownMessageSubjects.CLAIM_SUBJECT;
test_class.type: String
test_class.var_name: SUBJECT
test_class.declarator: AUTH_SUBJECTS_WITHOUT_DUPLICATES = Arrays.asList("test:JohnOldman", "test:FrankGrimes")
test_class.modifier: private static final
test_class.original_string: private static final Collection<String>
              AUTH_SUBJECTS_WITHOUT_DUPLICATES = Arrays.asList("test:JohnOldman", "test:FrankGrimes");
test_class.type: Collection<String>
test_class.var_name: AUTH_SUBJECTS_WITHOUT_DUPLICATES
test_class.declarator: AUTH_CONTEXT_WITHOUT_DUPLICATES =
              AuthorizationContext.newInstance(DittoAuthorizationContextType.UNSPECIFIED,
                      AUTH_SUBJECTS_WITHOUT_DUPLICATES.stream()
                              .map(AuthorizationSubject::newInstance)
                              .collect(Collectors.toList()))
test_class.modifier: private static final
test_class.original_string: private static final AuthorizationContext AUTH_CONTEXT_WITHOUT_DUPLICATES =
              AuthorizationContext.newInstance(DittoAuthorizationContextType.UNSPECIFIED,
                      AUTH_SUBJECTS_WITHOUT_DUPLICATES.stream()
                              .map(AuthorizationSubject::newInstance)
                              .collect(Collectors.toList()));
test_class.type: AuthorizationContext
test_class.var_name: AUTH_CONTEXT_WITHOUT_DUPLICATES
test_class.declarator: AUTH_SUBJECTS = Arrays.asList("test:JohnOldman", "test:FrankGrimes", "JohnOldman", "FrankGrimes")
test_class.modifier: private static final
test_class.original_string: private static final Collection<String> AUTH_SUBJECTS = Arrays.asList("test:JohnOldman", "test:FrankGrimes", "JohnOldman", "FrankGrimes");
test_class.type: Collection<String>
test_class.var_name: AUTH_SUBJECTS
test_class.declarator: AUTH_CONTEXT =
              AuthorizationContext.newInstance(DittoAuthorizationContextType.UNSPECIFIED,
                      AUTH_SUBJECTS.stream()
                              .map(AuthorizationSubject::newInstance)
                              .collect(Collectors.toList()))
test_class.modifier: private static final
test_class.original_string: private static final AuthorizationContext AUTH_CONTEXT =
              AuthorizationContext.newInstance(DittoAuthorizationContextType.UNSPECIFIED,
                      AUTH_SUBJECTS.stream()
                              .map(AuthorizationSubject::newInstance)
                              .collect(Collectors.toList()));
test_class.type: AuthorizationContext
test_class.var_name: AUTH_CONTEXT
test_class.declarator: KNOWN_CORRELATION_ID = "knownCorrelationId"
test_class.modifier: private static final
test_class.original_string: private static final String KNOWN_CORRELATION_ID = "knownCorrelationId";
test_class.type: String
test_class.var_name: KNOWN_CORRELATION_ID
test_class.declarator: KNOWN_SCHEMA_VERSION = JsonSchemaVersion.V_2
test_class.modifier: private static final
test_class.original_string: private static final JsonSchemaVersion KNOWN_SCHEMA_VERSION = JsonSchemaVersion.V_2;
test_class.type: JsonSchemaVersion
test_class.var_name: KNOWN_SCHEMA_VERSION
test_class.declarator: KNOWN_READ_SUBJECT = AuthorizationSubject.newInstance("knownReadSubject")
test_class.modifier: private static final
test_class.original_string: private static final AuthorizationSubject KNOWN_READ_SUBJECT = AuthorizationSubject.newInstance("knownReadSubject");
test_class.type: AuthorizationSubject
test_class.var_name: KNOWN_READ_SUBJECT
test_class.declarator: KNOWN_CHANNEL = "twin"
test_class.modifier: private static final
test_class.original_string: private static final String KNOWN_CHANNEL = "twin";
test_class.type: String
test_class.var_name: KNOWN_CHANNEL
test_class.declarator: KNOWN_RESPONSE_REQUIRED = true
test_class.modifier: private static final
test_class.original_string: private static final boolean KNOWN_RESPONSE_REQUIRED = true;
test_class.type: boolean
test_class.var_name: KNOWN_RESPONSE_REQUIRED
test_class.declarator: KNOWN_READ_SUBJECTS = Lists.list(KNOWN_READ_SUBJECT)
test_class.modifier: private static final
test_class.original_string: private static final Collection<AuthorizationSubject> KNOWN_READ_SUBJECTS = Lists.list(KNOWN_READ_SUBJECT);
test_class.type: Collection<AuthorizationSubject>
test_class.var_name: KNOWN_READ_SUBJECTS
test_class.declarator: FEATURE_ID = "flux-condensator-0815"
test_class.modifier: private static final
test_class.original_string: private static final String FEATURE_ID = "flux-condensator-0815";
test_class.type: String
test_class.var_name: FEATURE_ID
test_class.declarator: TIMEOUT = Duration.ofSeconds(5)
test_class.modifier: private static final
test_class.original_string: private static final Duration TIMEOUT = Duration.ofSeconds(5);
test_class.type: Duration
test_class.var_name: TIMEOUT
test_class.declarator: TIMESTAMP = "2017-09-22T09:47:23+01:00"
test_class.modifier: private static final
test_class.original_string: private static final String TIMESTAMP = "2017-09-22T09:47:23+01:00";
test_class.type: String
test_class.var_name: TIMESTAMP
test_class.declarator: STATUS_CODE = HttpStatusCode.OK
test_class.modifier: private static final
test_class.original_string: private static final HttpStatusCode STATUS_CODE = HttpStatusCode.OK;
test_class.type: HttpStatusCode
test_class.var_name: STATUS_CODE
test_class.declarator: CONTENT_TYPE = "application/json"
test_class.modifier: private static final
test_class.original_string: private static final String CONTENT_TYPE = "application/json";
test_class.type: String
test_class.var_name: CONTENT_TYPE
test_class.file: model/messages/src/test/java/org/eclipse/ditto/model/messages/ImmutableMessageHeadersTest.java
test_class.identifier: ImmutableMessageHeadersTest
test_case.body: @Test
      public void getDirectionAlthoughItIsNotSet() {
          final MessageHeaders underTest = ImmutableMessageHeaders.of(DittoHeaders.empty());
  
          assertThatExceptionOfType(IllegalStateException.class)
                  .isThrownBy(underTest::getDirection)
                  .withMessage("MessageHeaders did not contain a value for key <%s>!",
                          MessageHeaderDefinition.DIRECTION.getKey())
                  .withNoCause();
      }
test_case.class_method_signature: ImmutableMessageHeadersTest.getDirectionAlthoughItIsNotSet()
test_case.full_signature: @Test public void getDirectionAlthoughItIsNotSet()
test_case.identifier: getDirectionAlthoughItIsNotSet
test_case.invocations: of empty withNoCause withMessage isThrownBy assertThatExceptionOfType getKey
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void getDirectionAlthoughItIsNotSet()
focal_class.file: model/messages/src/main/java/org/eclipse/ditto/model/messages/ImmutableMessageHeaders.java
focal_class.identifier: ImmutableMessageHeaders
focal_class.interfaces: implements MessageHeaders
focal_class.class_method_signature: ImmutableMessageHeaders.ImmutableMessageHeaders(final Map<String, String> theDittoHeaders)
focal_class.full_signature: private  ImmutableMessageHeaders(final Map<String, String> theDittoHeaders)
focal_class.identifier: ImmutableMessageHeaders
focal_class.modifiers: private
focal_class.parameters: (final Map<String, String> theDittoHeaders)
focal_class.signature:  ImmutableMessageHeaders(final Map<String, String> theDittoHeaders)
focal_class.class_method_signature: ImmutableMessageHeaders.of(final DittoHeaders dittoHeaders)
focal_class.full_signature: static MessageHeaders of(final DittoHeaders dittoHeaders)
focal_class.identifier: of
focal_class.modifiers: static
focal_class.parameters: (final DittoHeaders dittoHeaders)
focal_class.return: MessageHeaders
focal_class.signature: MessageHeaders of(final DittoHeaders dittoHeaders)
focal_class.class_method_signature: ImmutableMessageHeaders.getDirection()
focal_class.full_signature: @Override public MessageDirection getDirection()
focal_class.identifier: getDirection
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: MessageDirection
focal_class.signature: MessageDirection getDirection()
focal_class.class_method_signature: ImmutableMessageHeaders.newIllegalStateException(final HeaderDefinition definition)
focal_class.full_signature: private static IllegalStateException newIllegalStateException(final HeaderDefinition definition)
focal_class.identifier: newIllegalStateException
focal_class.modifiers: private static
focal_class.parameters: (final HeaderDefinition definition)
focal_class.return: IllegalStateException
focal_class.signature: IllegalStateException newIllegalStateException(final HeaderDefinition definition)
focal_class.class_method_signature: ImmutableMessageHeaders.getSubject()
focal_class.full_signature: @Override public String getSubject()
focal_class.identifier: getSubject
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getSubject()
focal_class.class_method_signature: ImmutableMessageHeaders.getThingEntityId()
focal_class.full_signature: @Override public ThingId getThingEntityId()
focal_class.identifier: getThingEntityId
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: ThingId
focal_class.signature: ThingId getThingEntityId()
focal_class.class_method_signature: ImmutableMessageHeaders.getFeatureId()
focal_class.full_signature: @Override public Optional<String> getFeatureId()
focal_class.identifier: getFeatureId
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Optional<String>
focal_class.signature: Optional<String> getFeatureId()
focal_class.class_method_signature: ImmutableMessageHeaders.getTimestamp()
focal_class.full_signature: @Override public Optional<OffsetDateTime> getTimestamp()
focal_class.identifier: getTimestamp
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Optional<OffsetDateTime>
focal_class.signature: Optional<OffsetDateTime> getTimestamp()
focal_class.class_method_signature: ImmutableMessageHeaders.getStatusCode()
focal_class.full_signature: @Override public Optional<HttpStatusCode> getStatusCode()
focal_class.identifier: getStatusCode
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Optional<HttpStatusCode>
focal_class.signature: Optional<HttpStatusCode> getStatusCode()
focal_class.class_method_signature: ImmutableMessageHeaders.getSpecificDefinitionByKey(final CharSequence key)
focal_class.full_signature: @Override protected Optional<HeaderDefinition> getSpecificDefinitionByKey(final CharSequence key)
focal_class.identifier: getSpecificDefinitionByKey
focal_class.modifiers: @Override protected
focal_class.parameters: (final CharSequence key)
focal_class.return: Optional<HeaderDefinition>
focal_class.signature: Optional<HeaderDefinition> getSpecificDefinitionByKey(final CharSequence key)
focal_class.class_method_signature: ImmutableMessageHeaders.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.superclass: extends AbstractDittoHeaders
focal_method.body: static MessageHeaders of(final DittoHeaders dittoHeaders) {
          return new ImmutableMessageHeaders(checkNotNull(dittoHeaders, "Ditto Headers"));
      }
focal_method.class_method_signature: ImmutableMessageHeaders.of(final DittoHeaders dittoHeaders)
focal_method.full_signature: static MessageHeaders of(final DittoHeaders dittoHeaders)
focal_method.identifier: of
focal_method.invocations: checkNotNull
focal_method.modifiers: static
focal_method.parameters: (final DittoHeaders dittoHeaders)
focal_method.return: MessageHeaders
focal_method.signature: MessageHeaders of(final DittoHeaders dittoHeaders)