Search in sources :

Example 1 with ValueChangeEvent

use of com.alibaba.nacos.naming.consistency.ValueChangeEvent in project nacos by alibaba.

the class BasePersistentServiceProcessor method publishValueChangeEvent.

private void publishValueChangeEvent(final Op op, final BatchWriteRequest request) {
    final List<byte[]> keys = request.getKeys();
    final List<byte[]> values = request.getValues();
    for (int i = 0; i < keys.size(); i++) {
        final String key = new String(keys.get(i));
        final Datum datum = serializer.deserialize(values.get(i), getDatumTypeFromKey(key));
        final Record value = null != datum ? datum.value : null;
        final ValueChangeEvent event = ValueChangeEvent.builder().key(key).value(value).action(Op.Delete.equals(op) ? DataOperation.DELETE : DataOperation.CHANGE).build();
        NotifyCenter.publishEvent(event);
    }
}
Also used : ValueChangeEvent(com.alibaba.nacos.naming.consistency.ValueChangeEvent) Datum(com.alibaba.nacos.naming.consistency.Datum) Record(com.alibaba.nacos.naming.pojo.Record) ByteString(com.google.protobuf.ByteString)

Aggregations

Datum (com.alibaba.nacos.naming.consistency.Datum)1 ValueChangeEvent (com.alibaba.nacos.naming.consistency.ValueChangeEvent)1 Record (com.alibaba.nacos.naming.pojo.Record)1 ByteString (com.google.protobuf.ByteString)1