Skip to content

Commit 906d9b5

Browse files
committed
split Filters into k8 and openshift portions
Signed-off-by: Andre Dietisheim <[email protected]>
1 parent 67f2d9b commit 906d9b5

File tree

5 files changed

+59
-41
lines changed

5 files changed

+59
-41
lines changed

src/main/kotlin/com/redhat/devtools/intellij/kubernetes/model/dashboard/KubernetesDashboard.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
******************************************************************************/
1111
package com.redhat.devtools.intellij.kubernetes.model.dashboard
1212

13-
import com.redhat.devtools.intellij.kubernetes.model.resource.PodForService
13+
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForService
1414
import io.fabric8.kubernetes.api.model.Pod
1515
import io.fabric8.kubernetes.api.model.Service
1616
import io.fabric8.kubernetes.client.KubernetesClient
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
/*******************************************************************************
2+
* Copyright (c) 2020 Red Hat, Inc.
3+
* Distributed under license by Red Hat, Inc. All rights reserved.
4+
* This program is made available under the terms of the
5+
* Eclipse Public License v2.0 which accompanies this distribution,
6+
* and is available at http://www.eclipse.org/legal/epl-v20.html
7+
*
8+
* Contributors:
9+
* Red Hat, Inc. - initial API and implementation
10+
******************************************************************************/
11+
package com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes
12+
13+
import io.fabric8.kubernetes.api.model.Pod
14+
import io.fabric8.kubernetes.api.model.Service
15+
import io.fabric8.kubernetes.api.model.apps.DaemonSet
16+
import io.fabric8.kubernetes.api.model.apps.Deployment
17+
import io.fabric8.kubernetes.api.model.apps.StatefulSet
18+
import io.fabric8.kubernetes.api.model.batch.v1.Job
19+
import java.util.function.Predicate
20+
21+
22+
class PodForService(service: Service)
23+
: PodForResource(service.spec.selector)
24+
25+
class PodForDeployment(deployment: Deployment)
26+
: PodForResource(deployment.spec.selector.matchLabels)
27+
28+
class PodForStatefulSet(statefulSet: StatefulSet)
29+
: PodForResource(statefulSet.spec.selector.matchLabels)
30+
31+
class PodForDaemonSet(daemonSet: DaemonSet)
32+
: PodForResource(daemonSet.spec.selector?.matchLabels)
33+
34+
35+
open class PodForResource(private val selectorLabels: Map<String, String>?): Predicate<Pod> {
36+
37+
override fun test(pod: Pod): Boolean {
38+
return selectorLabels?.all { pod.metadata.labels?.entries?.contains(it) ?: false } ?: false
39+
}
40+
}
41+
42+
class PodForJob(private val job: Job)
43+
: Predicate<Pod> {
44+
45+
override fun test(pod: Pod): Boolean {
46+
return job.metadata.uid == pod.metadata?.labels?.get("controller-uid")
47+
}
48+
}
49+
50+

src/main/kotlin/com/redhat/devtools/intellij/kubernetes/model/resource/Filters.kt renamed to src/main/kotlin/com/redhat/devtools/intellij/kubernetes/model/resource/openshift/Filters.kt

Lines changed: 1 addition & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,10 @@
88
* Contributors:
99
* Red Hat, Inc. - initial API and implementation
1010
******************************************************************************/
11-
package com.redhat.devtools.intellij.kubernetes.model.resource
11+
package com.redhat.devtools.intellij.kubernetes.model.resource.openshift
1212

1313
import io.fabric8.kubernetes.api.model.Pod
1414
import io.fabric8.kubernetes.api.model.ReplicationController
15-
import io.fabric8.kubernetes.api.model.Service
16-
import io.fabric8.kubernetes.api.model.apps.DaemonSet
17-
import io.fabric8.kubernetes.api.model.apps.Deployment
18-
import io.fabric8.kubernetes.api.model.apps.StatefulSet
19-
import io.fabric8.kubernetes.api.model.batch.v1.Job
2015
import io.fabric8.openshift.api.model.Build
2116
import io.fabric8.openshift.api.model.BuildConfig
2217
import io.fabric8.openshift.api.model.DeploymentConfig
@@ -64,26 +59,6 @@ class BuildConfigFor(build: Build) : Predicate<BuildConfig> {
6459
}
6560
}
6661

67-
class PodForService(service: Service)
68-
: PodForResource(service.spec.selector)
69-
70-
class PodForDeployment(deployment: Deployment)
71-
: PodForResource(deployment.spec.selector.matchLabels)
72-
73-
class PodForStatefulSet(statefulSet: StatefulSet)
74-
: PodForResource(statefulSet.spec.selector.matchLabels)
75-
76-
class PodForDaemonSet(daemonSet: DaemonSet)
77-
: PodForResource(daemonSet.spec.selector?.matchLabels)
78-
79-
80-
open class PodForResource(private val selectorLabels: Map<String, String>?): Predicate<Pod> {
81-
82-
override fun test(pod: Pod): Boolean {
83-
return selectorLabels?.all { pod.metadata.labels?.entries?.contains(it) ?: false } ?: false
84-
}
85-
}
86-
8762
class PodForBuild(private val build: Build)
8863
: Predicate<Pod> {
8964

@@ -92,11 +67,4 @@ class PodForBuild(private val build: Build)
9267
}
9368
}
9469

95-
class PodForJob(private val job: Job)
96-
: Predicate<Pod> {
97-
98-
override fun test(pod: Pod): Boolean {
99-
return job.metadata.uid == pod.metadata?.labels?.get("controller-uid")
100-
}
101-
}
10270

src/main/kotlin/com/redhat/devtools/intellij/kubernetes/tree/KubernetesStructure.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,6 @@ import com.intellij.ide.util.treeView.NodeDescriptor
1414
import com.intellij.openapi.project.Project
1515
import com.intellij.ui.tree.LeafState
1616
import com.redhat.devtools.intellij.kubernetes.model.IResourceModel
17-
import com.redhat.devtools.intellij.kubernetes.model.resource.PodForDaemonSet
18-
import com.redhat.devtools.intellij.kubernetes.model.resource.PodForDeployment
19-
import com.redhat.devtools.intellij.kubernetes.model.resource.PodForJob
20-
import com.redhat.devtools.intellij.kubernetes.model.resource.PodForService
21-
import com.redhat.devtools.intellij.kubernetes.model.resource.PodForStatefulSet
2217
import com.redhat.devtools.intellij.kubernetes.model.resource.ResourceKind
2318
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.AllPodsOperator
2419
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.ConfigMapsOperator
@@ -33,6 +28,11 @@ import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.Namespa
3328
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.NodesOperator
3429
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PersistentVolumeClaimsOperator
3530
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PersistentVolumesOperator
31+
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForDaemonSet
32+
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForDeployment
33+
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForJob
34+
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForService
35+
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForStatefulSet
3636
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.SecretsOperator
3737
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.ServicesOperator
3838
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.StatefulSetsOperator

src/main/kotlin/com/redhat/devtools/intellij/kubernetes/tree/OpenShiftStructure.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@ package com.redhat.devtools.intellij.kubernetes.tree
1313
import com.intellij.ide.util.treeView.NodeDescriptor
1414
import com.intellij.ui.tree.LeafState
1515
import com.redhat.devtools.intellij.kubernetes.model.IResourceModel
16-
import com.redhat.devtools.intellij.kubernetes.model.resource.BuildFor
17-
import com.redhat.devtools.intellij.kubernetes.model.resource.ReplicationControllerFor
1816
import com.redhat.devtools.intellij.kubernetes.model.resource.ResourceKind
1917
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.BuildConfigsOperator
18+
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.BuildFor
2019
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.BuildsOperator
2120
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.DeploymentConfigsOperator
2221
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.ImageStreamsOperator
2322
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.ProjectsOperator
23+
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.ReplicationControllerFor
2424
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.ReplicationControllersOperator
2525
import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.RoutesOperator
2626
import com.redhat.devtools.intellij.kubernetes.model.resourceName

0 commit comments

Comments
 (0)