All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.dekorate.kind.adapter.KindConfigAdapter Maven / Gradle / Ivy

package io.dekorate.kind.adapter;

import io.dekorate.kubernetes.config.RollingUpdate;
import io.dekorate.kubernetes.config.AzureDiskVolume;
import io.dekorate.kubernetes.config.PersistentVolumeClaimVolume;
import io.dekorate.kubernetes.config.Port;
import io.dekorate.kubernetes.config.Label;
import io.dekorate.kubernetes.config.Mount;
import java.lang.String;
import io.dekorate.kubernetes.config.Env;
import io.dekorate.kubernetes.config.Probe;
import io.dekorate.kubernetes.config.ResourceRequirements;
import io.dekorate.kubernetes.config.Item;
import io.dekorate.kubernetes.config.Container;
import io.dekorate.kubernetes.annotation.CronJobConcurrencyPolicy;
import io.dekorate.kubernetes.annotation.ServiceType;
import io.dekorate.kind.annotation.Kind;
import io.dekorate.kubernetes.config.EmptyDirVolume;
import java.util.List;
import io.dekorate.kubernetes.annotation.JobRestartPolicy;
import io.dekorate.kubernetes.annotation.Protocol;
import io.dekorate.kubernetes.config.Job;
import java.lang.Boolean;
import io.dekorate.kubernetes.config.AwsElasticBlockStoreVolume;
import java.util.stream.Collectors;
import io.dekorate.kubernetes.config.ConfigMapVolume;
import io.dekorate.kubernetes.config.SecretVolume;
import io.dekorate.kind.config.KindConfigBuilder;
import io.dekorate.kubernetes.annotation.JobCompletionMode;
import io.dekorate.kubernetes.config.Annotation;
import io.dekorate.kubernetes.config.AzureFileVolume;
import io.dekorate.kubernetes.config.DeploymentStrategy;
import io.dekorate.kubernetes.config.HostAlias;
import io.dekorate.project.Project;
import io.dekorate.kubernetes.annotation.ImagePullPolicy;
import io.dekorate.kubernetes.config.CronJob;
import io.dekorate.project.BuildInfo;
import java.lang.Object;
import io.dekorate.kind.config.KindConfig;
import io.dekorate.project.ScmInfo;
import java.util.Arrays;
import java.util.Map;
import io.dekorate.kubernetes.config.GitRepoVolume;

/**
 * Generated
 */
public class KindConfigAdapter{
  
  
  
  public static KindConfig adapt(Kind instance) {
    return newBuilder(instance).build();
  }
  
  public static KindConfigBuilder newBuilder(Kind instance) {
    return new KindConfigBuilder(new KindConfig(null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                Arrays.asList(instance.ports()).stream().map(i ->new Port(i.name(),
                i.containerPort(),
                i.hostPort(),
                i.nodePort(),
                i.path(),
                i.protocol())).collect(Collectors.toList()).toArray(new Port[0]),
                instance.serviceType(),
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                instance.imagePullPolicy(),
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                null,
                instance.enabled()));
  }
  
  public static KindConfig adapt(Map map) {
    return new KindConfig(
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
                   Arrays.stream((Map[])(map instanceof Map ? ((Map)map).getOrDefault("ports" , new Map[0]) : new Map[0])).map(i ->new Port(
                   (String)(i instanceof Map ? ((Map)i).getOrDefault("name", null) : null),
                   (java.lang.Integer)(i instanceof Map ? ((Map)i).getOrDefault("containerPort", null) : null),
                   (java.lang.Integer)(i instanceof Map ? ((Map)i).getOrDefault("hostPort", 0) : 0),
                   (java.lang.Integer)(i instanceof Map ? ((Map)i).getOrDefault("nodePort", 0) : 0),
                   (String)(i instanceof Map ? ((Map)i).getOrDefault("path", "/") : "/"),
                   io.dekorate.kubernetes.annotation.Protocol.valueOf(String.valueOf(i instanceof Map ? ((Map)i).getOrDefault("protocol","TCP") : "TCP")))).toArray(size-> new Port[size]),
                   (ServiceType)(map instanceof Map ? ( ((Map)map).getOrDefault("serviceType", null) != null ? io.dekorate.kubernetes.annotation.ServiceType.valueOf(String.valueOf(((Map)map).getOrDefault("serviceType", null))) : null ) : null),
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
                   (ImagePullPolicy)(map instanceof Map ? ( ((Map)map).getOrDefault("imagePullPolicy", null) != null ? io.dekorate.kubernetes.annotation.ImagePullPolicy.valueOf(String.valueOf(((Map)map).getOrDefault("imagePullPolicy", null))) : null ) : null),
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
                   (Boolean)(map instanceof Map ? ((Map)map).getOrDefault("enabled", null) : null));
  }
  
  public static KindConfigBuilder newBuilder(Map map) {
    return new KindConfigBuilder(new KindConfig(
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
                   Arrays.stream((Map[])(map instanceof Map ? ((Map)map).getOrDefault("ports" , new Map[0]) : new Map[0])).map(i ->new Port(
                   (String)(i instanceof Map ? ((Map)i).getOrDefault("name", null) : null),
                   (java.lang.Integer)(i instanceof Map ? ((Map)i).getOrDefault("containerPort", null) : null),
                   (java.lang.Integer)(i instanceof Map ? ((Map)i).getOrDefault("hostPort", 0) : 0),
                   (java.lang.Integer)(i instanceof Map ? ((Map)i).getOrDefault("nodePort", 0) : 0),
                   (String)(i instanceof Map ? ((Map)i).getOrDefault("path", "/") : "/"),
                   io.dekorate.kubernetes.annotation.Protocol.valueOf(String.valueOf(i instanceof Map ? ((Map)i).getOrDefault("protocol","TCP") : "TCP")))).toArray(size-> new Port[size]),
                   (ServiceType)(map instanceof Map ? ( ((Map)map).getOrDefault("serviceType", null) != null ? io.dekorate.kubernetes.annotation.ServiceType.valueOf(String.valueOf(((Map)map).getOrDefault("serviceType", null))) : null ) : null),
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
                   (ImagePullPolicy)(map instanceof Map ? ( ((Map)map).getOrDefault("imagePullPolicy", null) != null ? io.dekorate.kubernetes.annotation.ImagePullPolicy.valueOf(String.valueOf(((Map)map).getOrDefault("imagePullPolicy", null))) : null ) : null),
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
    null,
                   (Boolean)(map instanceof Map ? ((Map)map).getOrDefault("enabled", null) : null)));
  }
  
  public static String[] toStringArray(Object o) {
    if (o instanceof String[]) {
      return (String[]) o;
    }
    if (o instanceof String) {
        String s = (String) o;;
        return s.split(",[ ]*");
    }
    if (o instanceof List) {
        List l = (List) o;;
        String[] larray = new String[l.size()];;
        for (int i = 0;i == l.size();i++) {
          larray[i] = java.lang.String.valueOf(l.get(i));
        }
    }
    return new String[0];
  }
  

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy