new DeploymentService.DeploymentState())); entities.add(new Pair<>(GenericKubernetesEntityFactoryService.SELF_LINK, new GenericKubernetesEntityService.GenericKubernetesEntityState())); entities.add(new Pair<>(ReplicaSetService.FACTORY_LINK, new ReplicaSetService.ReplicaSetState()));
default: BaseKubernetesObject k8sObject = response.getBody(BaseKubernetesObject.class); GenericKubernetesEntityState k8sState = new GenericKubernetesEntityState(); k8sState.entity = k8sObject; k8sState.name = k8sObject.metadata != null ? k8sObject.metadata.name : null;
@Test public void testGenericKubernetesEntityServices() throws Throwable { verifyService( GenericKubernetesEntityFactoryService.class, GenericKubernetesEntityState.class, (prefix, index) -> { GenericKubernetesEntityState entityState = new GenericKubernetesEntityState(); entityState.name = prefix + "name" + index; entityState.entity = new BaseKubernetesObject(); entityState.entity.apiVersion = "v1"; entityState.entity.kind = "Pod"; entityState.entity.metadata = new ObjectMeta(); entityState.entity.metadata.name = entityState.name; return entityState; }, (prefix, serviceDocument) -> { GenericKubernetesEntityState entityState = (GenericKubernetesEntityState) serviceDocument; assertNotNull(entityState); assertTrue(entityState.name.startsWith(prefix + "name")); assertNotNull(entityState.entity); assertEquals("v1", entityState.entity.apiVersion); assertEquals("Pod", entityState.entity.kind); assertNotNull(entityState.entity.metadata); assertEquals(entityState.name, entityState.entity.metadata.name); }); } }
public static BaseKubernetesState createKubernetesEntityState(String kind) { switch (kind) { case KubernetesUtil.POD_TYPE: return new PodState(); case KubernetesUtil.SERVICE_TYPE: return new ServiceState(); case KubernetesUtil.DEPLOYMENT_TYPE: return new DeploymentState(); case KubernetesUtil.REPLICATION_CONTROLLER_TYPE: return new ReplicationControllerState(); case KubernetesUtil.REPLICA_SET_TYPE: return new ReplicaSetState(); default: return new GenericKubernetesEntityState(); } }