GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||
GeezerVison is showing github.com — Better lazy resolution by ctrueden · Pull Request #91 · scijava/scijava-common Conversation
Member
MERGE ONLY IN CONCERT WITH THE OTHER 3.0.0 BRANCHES. This improves the See also issue #90.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Member
Author
All reactions
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page.
Member
Author
All reactions
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. Specifically, we test that lazy object resolution works in conjunction with a call to getAll(), to ensure that pending objects get resolved. The LazyObjects instance will definitely return a collection of objects of type PT, not just Object. This distinction is important now that the ObjectIndex is more selective about which pending objects it resolves. This breaks backwards compatibility, so bumps the development snapshot version to 3.0.0. The rationale is to make it possible for the ObjectIndex to better discriminate which objects should be resolved for a particular call to ObjectIndex#get(Class). The current behavior is to resolve _all_ pending objects with _any_ call to get(Class), which is generally suboptimal. If a pending object will not be of a type compatible with the requested type, then skip resolution of that pending object. This improves performance of the get(Class) and getAll() methods in cases where there are a large number of pending objects in the index. It also helps to eliminate difficulties like those in issue #90. This tests that the addLater method works in conjunction with calls to get(Class). The logic is nontrivial because we only want to resolve pending objects when the types are compatible with the requested one. The filterInstances method should not alter the return type of the input list. The purpose of that method is to potentially remove some elements from the input list -- nothing more -- so it should still return a List<PT>, not something else. Instead of maintaining our own list of singletons, we should be using the ObjectService.
ctrueden
force-pushed
the
better-lazy-resolution
branch
from
cbc827c to
d6a7eba
Compare
Member
Author
All reactions
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page.
ctrueden
force-pushed
the
master
branch
3 times, most recently
from
53b6733 to
3dc99c9
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
ReviewersNo reviewsUh oh!
There was an error while loading. Please reload this page. AssigneesNo one assignedLabels
None yet
ProjectsDevelopmentSuccessfully merging this pull request may close these issues. Uh oh!
There was an error while loading. Please reload this page. Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later. | |||
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |