class RetrieveThingDefinitionResponse extends AbstractCommandResponse<RetrieveThingDefinitionResponse> implements
        ThingQueryCommandResponse<RetrieveThingDefinitionResponse> {

    public static RetrieveThingDefinitionResponse of(final ThingId thingId, final ThingDefinition definition,
            final DittoHeaders dittoHeaders) {
        return new RetrieveThingDefinitionResponse(thingId, HttpStatusCode.OK, definition, dittoHeaders);
    }

    private  RetrieveThingDefinitionResponse(final ThingId thingId, final HttpStatusCode statusCode,
            final ThingDefinition definition, final DittoHeaders dittoHeaders);

}