public OpenShiftTemplate(OpenShiftClient client, OpenShiftRuntimeConfig runtimeConfig) { Loadable<TemplateResource<Template, KubernetesList, DoneableTemplate>> loadable = null; String prjName = runtimeConfig.getProjectName(); String templateUri = runtimeConfig.getResourceTemplateUri(); String templateName = runtimeConfig.getResourceTemplateName(); if (prjName != null) { loadable = client.getDelegate().templates().inNamespace(prjName); } else { loadable = client.getDelegate().templates(); } TemplateResource<Template, KubernetesList, DoneableTemplate> res = null; if (templateUri != null) { URL templateUrl = client.toUrl(templateUri); if (templateUrl != null) { res = loadable.load(templateUrl); } } else if (templateName != null && !templateName.isEmpty()) { res = loadable.load(templateName); } resource = res; template = res != null ? res.get() : null; if (template == null) { throw new OpenShiftClientException(String.format("could not load template with project [%s] and uri [%s] or name [%s]", prjName, templateUri, templateName)); } }
@Override public OpenShiftRuntimeConfig asNewClone(final OpenShiftRuntimeConfig source) { return new OpenShiftRuntimeConfigImpl( source.getRuntimeName(), source.getProviderId(), source.getApplicationName(), source.getKieServerContainerDeployment(), source.getProjectName(), source.getResourceSecretsUri(), source.getResourceStreamsUri(), source.getResourceTemplateName(), source.getResourceTemplateParamDelimiter(), source.getResourceTemplateParamAssigner(), source.getResourceTemplateParamValues(), source.getResourceTemplateUri(), source.getServiceName()); }