History

move static members of ResourceManager into DependencyManager

ZappoMan committed 11 years ago

Commit 4061e141 parent fe3f01b3 files · +39 −14Browse files

Showing the changes to libraries/networking/src/ResourceCache.cpp (1 of 3 files). Show all

Unified · Split

libraries/networking/src/ResourceCache.cpp+11−10
@@ -112,27 +112,31 @@ void ResourceCache::reserveUnusedResource(qint64 resourceSize) { · 111 unmodified lines
112112 }
113113
114114 void ResourceCache::attemptRequest(Resource* resource) {
115+ auto sharedItems = DependencyManager::get<ResouceCacheSharedItems>();
115116 if (_requestLimit <= 0) {
116117 // wait until a slot becomes available
117− _pendingRequests.append(resource);
118+ sharedItems->_pendingRequests.append(resource);
118119 return;
119120 }
120121 _requestLimit--;
121− _loadingRequests.append(resource);
122+ sharedItems->_loadingRequests.append(resource);
122123 resource->makeRequest();
123124 }
124125
125126 void ResourceCache::requestCompleted(Resource* resource) {
126− _loadingRequests.removeOne(resource);
127+
128+ auto sharedItems = DependencyManager::get<ResouceCacheSharedItems>();
129+ sharedItems->_loadingRequests.removeOne(resource);
127130 _requestLimit++;
128131
129132 // look for the highest priority pending request
130133 int highestIndex = -1;
131134 float highestPriority = -FLT_MAX;
132− for (int i = 0; i < _pendingRequests.size(); ) {
133− Resource* resource = _pendingRequests.at(i).data();
135+ int pendingRequests = sharedItems->_pendingRequests.size();
136+ for (int i = 0; i < pendingRequests; ) {
137+ Resource* resource = sharedItems->_pendingRequests.at(i).data();
134138 if (!resource) {
135− _pendingRequests.removeAt(i);
139+ sharedItems->_pendingRequests.removeAt(i);
136140 continue;
137141 }
138142 float priority = resource->getLoadPriority();
@@ -143,16 +147,13 @@ void ResourceCache::requestCompleted(Resource* resource) { · 4 unmodified lines
143147 i++;
144148 }
145149 if (highestIndex >= 0) {
146− attemptRequest(_pendingRequests.takeAt(highestIndex));
150+ attemptRequest(sharedItems->_pendingRequests.takeAt(highestIndex));
147151 }
148152 }
149153
150154 const int DEFAULT_REQUEST_LIMIT = 10;
151155 int ResourceCache::_requestLimit = DEFAULT_REQUEST_LIMIT;
152156
153−QList<QPointer<Resource> > ResourceCache::_pendingRequests;
154−QList<Resource*> ResourceCache::_loadingRequests;
155−
156157 Resource::Resource(const QUrl& url, bool delayLoad) :
157158 _url(url),
158159 _request(url) {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t