private Optional resolve()

in junit-platform-engine/src/main/java/org/junit/platform/engine/support/discovery/EngineDiscoveryRequestResolution.java [118:162]


	private Optional<Resolution> resolve(DiscoverySelector selector) {
		if (resolvedSelectors.containsKey(selector)) {
			return Optional.of(resolvedSelectors.get(selector));
		}
		if (selector instanceof UniqueIdSelector) {
			return resolveUniqueId((UniqueIdSelector) selector);
		}
		return resolve(selector, resolver -> {
			Context context = getContext(selector);
			if (selector instanceof ClasspathResourceSelector) {
				return resolver.resolve((ClasspathResourceSelector) selector, context);
			}
			if (selector instanceof ClasspathRootSelector) {
				return resolver.resolve((ClasspathRootSelector) selector, context);
			}
			if (selector instanceof ClassSelector) {
				return resolver.resolve((ClassSelector) selector, context);
			}
			if (selector instanceof NestedClassSelector) {
				return resolver.resolve((NestedClassSelector) selector, context);
			}
			if (selector instanceof DirectorySelector) {
				return resolver.resolve((DirectorySelector) selector, context);
			}
			if (selector instanceof FileSelector) {
				return resolver.resolve((FileSelector) selector, context);
			}
			if (selector instanceof MethodSelector) {
				return resolver.resolve((MethodSelector) selector, context);
			}
			if (selector instanceof NestedMethodSelector) {
				return resolver.resolve((NestedMethodSelector) selector, context);
			}
			if (selector instanceof ModuleSelector) {
				return resolver.resolve((ModuleSelector) selector, context);
			}
			if (selector instanceof PackageSelector) {
				return resolver.resolve((PackageSelector) selector, context);
			}
			if (selector instanceof UriSelector) {
				return resolver.resolve((UriSelector) selector, context);
			}
			return resolver.resolve(selector, context);
		});
	}