public void StoreDataItems <T>(List <T> dataItems) where T : ITransmittable { if (!IsInitialized) { throw new Exception("The dealer has not been initialized yet."); } var supernodesLists = HashBottomSuperNodes(dataItems, B); for (int i = 0; i < supernodesLists.Count; i++) { var dataItem = dataItems[i]; foreach (var supernode in supernodesLists[i]) { foreach (var nodeId in supernode.NodeIds) { var msg = new BnMessage(BnMessageType.Store, dataItem); Send(nodeId, msg, 100); } } } }
public void Search <T>(T query, int nodeId) where T : ITransmittable { var queryMsg = new BnMessage(BnMessageType.Query, query); Send(nodeId, queryMsg, 100); }