MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / pullRequests

Method pullRequests

source/game/StarCelestialDatabase.cpp:646–674  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

644}
645
646List<CelestialRequest> CelestialSlaveDatabase::pullRequests() {
647 RecursiveMutexLocker locker(m_mutex);
648
649 List<CelestialRequest> requests;
650
651 auto chunkIt = makeSMutableMapIterator(m_pendingChunkRequests);
652 while (chunkIt.hasNext()) {
653 auto& pair = chunkIt.next();
654 if (!pair.second.running()) {
655 requests.append(makeLeft(pair.first));
656 pair.second.restart(m_requestTimeout);
657 } else if (pair.second.timeUp()) {
658 chunkIt.remove();
659 }
660 }
661
662 auto systemIt = makeSMutableMapIterator(m_pendingSystemRequests);
663 while (systemIt.hasNext()) {
664 auto& pair = systemIt.next();
665 if (!pair.second.running()) {
666 requests.append(makeRight(pair.first));
667 pair.second.restart(m_requestTimeout);
668 } else if (pair.second.timeUp()) {
669 systemIt.remove();
670 }
671 }
672
673 return requests;
674}
675
676void CelestialSlaveDatabase::pushResponses(List<CelestialResponse> responses) {
677 RecursiveMutexLocker locker(m_mutex);

Callers 1

updateMethod · 0.80

Calls 10

makeSMutableMapIteratorFunction · 0.85
makeLeftFunction · 0.85
makeRightFunction · 0.85
timeUpMethod · 0.80
hasNextMethod · 0.45
nextMethod · 0.45
runningMethod · 0.45
appendMethod · 0.45
restartMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected