RetrieveThingLiveCommandImpl extends AbstractQueryLiveCommand<RetrieveThingLiveCommand,
        RetrieveThingLiveCommandAnswerBuilder> implements RetrieveThingLiveCommand { @Override public RetrieveThingLiveCommand setDittoHeaders(final DittoHeaders dittoHeaders) { final RetrieveThing twinCommand = RetrieveThing.getBuilder(getThingEntityId(), dittoHeaders) .withSelectedFields(getSelectedFields().orElse(null)) .build(); return of(twinCommand); } private  RetrieveThingLiveCommandImpl(final RetrieveThing command); @Nonnull static RetrieveThingLiveCommandImpl of(final Command<?> command); @Override RetrieveThingLiveCommand setDittoHeaders(final DittoHeaders dittoHeaders); @Nonnull @Override RetrieveThingLiveCommandAnswerBuilder answer(); @Nonnull @Override String toString();  }
@Test public void setDittoHeadersReturnsExpected() { final DittoHeaders emptyDittoHeaders = DittoHeaders.empty(); final RetrieveThingLiveCommand newRetrieveThingLiveCommand = underTest.setDittoHeaders(emptyDittoHeaders); assertThat(newRetrieveThingLiveCommand).withDittoHeaders(emptyDittoHeaders); }