class SagaKeyReaderExtractor implements KeyExtractor {

    @Override
    public Object findSagaInstanceKey(final Class<? extends Saga> sagaClazz, final LookupContext context) {
        Object keyValue = null;

        KeyReader reader = tryGetKeyReader(sagaClazz, context.message());
        if (reader != null) {
            keyValue = reader.readKey(context.message(), context);
        }

        return keyValue;
    }

    @Inject public  SagaKeyReaderExtractor(final SagaProviderFactory sagaProviderFactory);

}