We study a single server queueing system that receives singly arriving customers according to a Poisson process. The server offers one of the two types of heterogeneous services. Before the beginning of a service, , the customer can choose an exponential service with probability p1 or a deterministic service with probability p2, where p1+p2=1 Immediately after a service is completed, the server has a choice of taking a vacation with probability δ, or, with probability 1-δ, the server may continue staying in the system. We further assume that if the server opts to take a vacation, then with probability α1, he may take a vacation of an exponential duration with mean vacation time 1/u (u>0) or with probability he may want to take a deterministic vacation with constant duration d>0, where α1+α2=1. After a vacation is complete, the server instantly starts providing service if there is at least one customer in the system or the server remains idle in the system till a new customer arrives for service. We find a steady state solution in terms of the generating function of the queue length as well as the steady state probabilities for all different states of the system.