in PluginsAndFeatures/azure-toolkit-for-rider/azure-intellij-plugin-cosmos-dotnet/src/main/kotlin/com/microsoft/azure/toolkit/intellij/cosmos/IntellijDotnetCosmosActionsContributor.kt [29:104]
override fun registerHandlers(am: AzureActionManager) {
val mongoFunction = { account: MongoCosmosDBAccount ->
account.mongoDatabases().list().stream().findFirst().orElse(null)
}
am.registerHandler(
ResourceCommonActionsContributor.CONNECT,
{ r, e -> r is MongoCosmosDBAccount && r.formalStatus.isConnected }
) { r, e: AnActionEvent ->
openResourceConnector(
r as MongoCosmosDBAccount,
mongoFunction,
MongoCosmosDBAccountResourceDefinition.INSTANCE,
e.project
)
}
am.registerHandler(
ResourceCommonActionsContributor.CONNECT,
{ r, e -> r is MongoDatabase && r.formalStatus.isConnected }
) { r, e: AnActionEvent ->
openResourceConnector(
r as MongoDatabase,
MongoCosmosDBAccountResourceDefinition.INSTANCE,
e.project
)
}
val sqlFunction = { account: SqlCosmosDBAccount ->
account.sqlDatabases().list().stream().findFirst().orElse(null)
}
am.registerHandler(
ResourceCommonActionsContributor.CONNECT,
{ r, e -> r is SqlCosmosDBAccount && r.formalStatus.isConnected }
) { r, e: AnActionEvent ->
openResourceConnector(
r as SqlCosmosDBAccount,
sqlFunction,
SqlCosmosDBAccountResourceDefinition.INSTANCE,
e.project
)
}
am.registerHandler(
ResourceCommonActionsContributor.CONNECT,
{ r, e -> r is SqlDatabase && r.formalStatus.isConnected }
) { r, e: AnActionEvent ->
openResourceConnector(
r as SqlDatabase,
SqlCosmosDBAccountResourceDefinition.INSTANCE,
e.project
)
}
val cassandraFunction = { account: CassandraCosmosDBAccount ->
account.keySpaces().list().stream().findFirst().orElse(null)
}
am.registerHandler(
ResourceCommonActionsContributor.CONNECT,
{ r, e -> r is CassandraCosmosDBAccount && r.formalStatus.isConnected }
) { r, e: AnActionEvent ->
openResourceConnector(
r as CassandraCosmosDBAccount,
cassandraFunction,
CassandraCosmosDBAccountResourceDefinition.INSTANCE,
e.project
)
}
am.registerHandler(
ResourceCommonActionsContributor.CONNECT,
{ r, e -> r is CassandraKeyspace && r.formalStatus.isConnected }
) { r, e: AnActionEvent ->
openResourceConnector(
r as CassandraKeyspace,
CassandraCosmosDBAccountResourceDefinition.INSTANCE,
e.project
)
}
}