MemoryHookQueue.java
package io.featureprobe.api.hook;
import io.featureprobe.api.base.hook.IHookQueue;
import io.featureprobe.api.base.model.HookContext;
import org.springframework.stereotype.Component;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;
@Component
public class MemoryHookQueue implements IHookQueue {
private final BlockingQueue<HookContext> eventQueue = new ArrayBlockingQueue<>(10000);
@Override
public boolean push(HookContext hookContext) {
return eventQueue.offer(hookContext);
}
@Override
public HookContext take() throws Exception {
return eventQueue.take();
}
}