func NewService(cc *v1alpha1.CassandraCluster, opts ...BuilderOption) *Service {
	op := newBuilderOp()
	op.applyOpts(opts)
	return &Service{
		cluster: cc,
		options: op,
	}
}
NewService is the constructor for ServiceBuilder class
package resource
import (
	"errors"
	"fmt"
	"github.com/operator-framework/operator-sdk/pkg/sdk"
	"github.com/pantheon-systems/cassandra-operator/pkg/apis/database/v1alpha1"
	opsdk "github.com/pantheon-systems/cassandra-operator/pkg/backend/k8s"
	corev1 "k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
type ClusterServiceType int
const (
	ServiceTypeNone ClusterServiceType = iota
	ServiceTypePublicLB
	ServiceTypePublicPod
	ServiceTypeHeadless
	ServiceTypeInternal
)
type Service struct {
	configured *corev1.Service
	cluster    *v1alpha1.CassandraCluster
	options    *builderOp
}