Lines Matching refs:link
42 while (DependencyLink* link = fDependencyLinks.RemoveHead())
43 link->ReleaseReference();
168 while (DependencyLink* link = fDependencyLinks.RemoveHead())
169 _RemoveLink(link, listener);
174 // remove self and settings link
184 // create/update self and settings link
218 // link already exists -- update
219 DependencyLink* link = static_cast<DependencyLink*>(node);
221 NodeWriteLocker linkLocker(link);
222 link->Update(resolvablePackage, listener);
224 // no link for the dependency yet -- create one
225 DependencyLink* link = new(std::nothrow) DependencyLink(
227 if (link == NULL)
230 status_t error = link->Init(this, dependency->FileName());
232 delete link;
236 AddChild(link);
237 fDependencyLinks.Add(link);
240 NodeWriteLocker linkLocker(link);
241 listener->PackageLinkNodeAdded(link);
251 PackageLinkDirectory::_RemoveLink(Link* link, PackageLinksListener* listener)
253 if (link != NULL) {
254 NodeWriteLocker linkLocker(link);
256 listener->PackageLinkNodeRemoved(link);
258 RemoveChild(link);
260 link->ReleaseReference();
266 PackageLinkDirectory::_CreateOrUpdateLink(Link*& link, Package* package,
269 if (link == NULL) {
270 link = new(std::nothrow) Link(package, type);
271 if (link == NULL)
274 status_t error = link->Init(this, name);
278 AddChild(link);
281 NodeWriteLocker lLinkLocker(link);
282 listener->PackageLinkNodeAdded(link);
285 NodeWriteLocker lLinkLocker(link);
286 link->Update(package, listener);