void (@Nullable JsonSchemaFileProvider provider, VirtualFile schemaFile) { if (provider == null) { if (schemaFile instanceof HttpVirtualFile) { // auto-detected and auto-downloaded JSON schemas JsonSchemaUsageTriggerCollector.trigger(REMOTE_USAGE_KEY); } return; } final SchemaType schemaType = provider.getSchemaType(); JsonSchemaUsageTriggerCollector.trigger(switch (schemaType) { case schema -> SCHEMA_USAGE_KEY; case userSchema -> USER_USAGE_KEY; case embeddedSchema -> BUILTIN_USAGE_KEY; case remoteSchema -> // this works only for user-specified remote schemas in our settings, but not for auto-detected remote schemas REMOTE_USAGE_KEY; }); }