ai.grakn.redismock.commands.RO_publish Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of redis-mock Show documentation
Show all versions of redis-mock Show documentation
In memory Redis mock for testing
package ai.grakn.redismock.commands;
import ai.grakn.redismock.RedisBase;
import ai.grakn.redismock.RedisClient;
import ai.grakn.redismock.Response;
import ai.grakn.redismock.Slice;
import java.util.List;
import java.util.Set;
class RO_publish extends AbstractRedisOperation {
RO_publish(RedisBase base, List params) {
super(base, params,2, null, null);
}
Slice response(){
Slice channel = params().get(0);
Slice message = params().get(1);
Set subscibers = base().getSubscribers(channel);
subscibers.forEach(subscriber -> {
Slice response = Response.publishedMessage(channel, message);
subscriber.sendResponse(response, "contacting subscriber");
});
return Response.integer(subscibers.size());
}
}