Mule 4 Генератор ответов кэширования только полезной нагрузки
В Mule 3.x мы используем стратегию кэширования, которая использует генератор только полезной нагрузки, чтобы просто кэшировать полезную нагрузку, а не всю полезную нагрузку, используя класс, описанный в этом руководстве.
https://support.mulesoft.com/s/article/How-to-cache-only-the-payload-and-not-the-entire-message
package com.mulesoft.support;
import org.mule.DefaultMuleEvent;
import org.mule.api.MuleEvent;
import com.mulesoft.mule.cache.responsegenerator.ResponseGenerator;
public class PayloadResponseGenerator implements ResponseGenerator
{
@Override
public MuleEvent create(MuleEvent request, MuleEvent cachedResponse)
{
// we only need to set the payload
request.getMessage().setPayload(cachedResponse.getMessage().getPayload());
return request;
}
}
Я пытаюсь реализовать его в муле 4, но я не могу найти эквивалент setPayload на новый интерфейс событий API
import org.mule.api.MuleEvent;
import org.mule.runtime.core.api.event.CoreEvent;
import com.mulesoft.mule.runtime.cache.api.response.ResponseGenerator;
public class PayloadOnlyCachingResponseGenerator implements ResponseGenerator{
@Override
public MuleEvent create(MuleEvent requestedEvent, MuleEvent cachedResponseEvent) {
Object cachedPayload = cachedResponseEvent.getMessage().getPayload();
requestedEvent.getMessage().setPayload(cachedPayload);
return requestedEvent;
}
}
Я получаю ошибку при установке полезной нагрузки, так как она больше не существует. У нас есть другой способ реализовать это?
заранее спасибо