func (s S) Elasticsearches() []esv1.Elasticsearch {
	return s.elasticsearches
}
Elasticsearches returns the list of elastic search instances for this strategy
package strategy
import (
	osconsolev1 "github.com/openshift/api/console/v1"
	osv1 "github.com/openshift/api/route/v1"
	appsv1 "k8s.io/api/apps/v1"
	autoscalingv2beta2 "k8s.io/api/autoscaling/v2beta2"
	batchv1 "k8s.io/api/batch/v1"
	batchv1beta1 "k8s.io/api/batch/v1beta1"
	corev1 "k8s.io/api/core/v1"
	networkingv1 "k8s.io/api/networking/v1"
	rbac "k8s.io/api/rbac/v1"
	"k8s.io/apimachinery/pkg/runtime"
	"github.com/jaegertracing/jaeger-operator/pkg/consolelink"
	v1 "github.com/jaegertracing/jaeger-operator/pkg/apis/jaegertracing/v1"
	kafkav1beta2 "github.com/jaegertracing/jaeger-operator/pkg/apis/kafka/v1beta2"
	esv1 "github.com/jaegertracing/jaeger-operator/pkg/storage/elasticsearch/v1"
)
type S struct {
	typ v1.DeploymentStrategy
	accounts                 []corev1.ServiceAccount
	clusterRoleBindings      []rbac.ClusterRoleBinding
	configMaps               []corev1.ConfigMap
	consoleLinks             []osconsolev1.ConsoleLink
	cronJobs                 []batchv1beta1.CronJob
	daemonSets               []appsv1.DaemonSet
	dependencies             []batchv1.Job
	deployments              []appsv1.Deployment
	elasticsearches          []esv1.Elasticsearch
	horizontalPodAutoscalers []autoscalingv2beta2.HorizontalPodAutoscaler
	ingresses                []networkingv1.Ingress
	kafkas                   []kafkav1beta2.Kafka
	kafkaUsers               []kafkav1beta2.KafkaUser
	routes                   []osv1.Route
	services                 []corev1.Service
	secrets                  []corev1.Secret
}
func New() *S {
	return &S{}
}
func (s S) Type() v1.DeploymentStrategy {
	return s.typ
}
func (s S) WithAccounts(accs []corev1.ServiceAccount) S {
	s.accounts = accs
	return s
}
func (s S) WithClusterRoleBindings(c []rbac.ClusterRoleBinding) S {
	s.clusterRoleBindings = c
	return s
}
func (s S) WithConsoleLinks(c []osconsolev1.ConsoleLink) S {
	s.consoleLinks = c
	return s
}
func (s S) WithConfigMaps(c []corev1.ConfigMap) S {
	s.configMaps = c
	return s
}
func (s S) WithCronJobs(c []batchv1beta1.CronJob) S {
	s.cronJobs = c
	return s
}
func (s S) WithDeployments(deps []appsv1.Deployment) S {
	s.deployments = deps
	return s
}
func (s S) WithDaemonSets(d []appsv1.DaemonSet) S {
	s.daemonSets = d
	return s
}
func (s S) WithDependencies(deps []batchv1.Job) S {
	s.dependencies = deps
	return s
}
func (s S) WithElasticsearches(es []esv1.Elasticsearch) S {
	s.elasticsearches = es
	return s
}
func (s S) WithIngresses(i []networkingv1.Ingress) S {
	s.ingresses = i
	return s
}
func (s S) WithHorizontalPodAutoscaler(i []autoscalingv2beta2.HorizontalPodAutoscaler) S {
	s.horizontalPodAutoscalers = i
	return s
}
func (s S) WithRoutes(r []osv1.Route) S {
	s.routes = r
	return s
}
func (s S) WithKafkas(k []kafkav1beta2.Kafka) S {
	s.kafkas = k
	return s
}
func (s S) WithKafkaUsers(k []kafkav1beta2.KafkaUser) S {
	s.kafkaUsers = k
	return s
}
func (s S) WithServices(svcs []corev1.Service) S {
	s.services = svcs
	return s
}
func (s S) WithSecrets(secrets []corev1.Secret) S {
	s.secrets = secrets
	return s
}
func (s S) Accounts() []corev1.ServiceAccount {
	return s.accounts
}
func (s S) ClusterRoleBindings() []rbac.ClusterRoleBinding {
	return s.clusterRoleBindings
}
func (s S) ConfigMaps() []corev1.ConfigMap {
	return s.configMaps
}
func (s S) ConsoleLinks(routes []osv1.Route) []osconsolev1.ConsoleLink {
	return consolelink.UpdateHref(routes, s.consoleLinks)
}
func (s S) CronJobs() []batchv1beta1.CronJob {
	return s.cronJobs
}
func (s S) DaemonSets() []appsv1.DaemonSet {
	return s.daemonSets
}
func (s S) Deployments() []appsv1.Deployment {
	return s.deployments
}