import { IpcClientService } from "@autoplex/ipc";
import { Microservice } from "@autoplex/microservice";
import { SOCKET_PATH } from "./constants";

export class IpcClient<M extends Microservice = Microservice> extends IpcClientService<M>
{
    /**
     * The service name
     */
    public readonly NAME = "Seeker";

    /**
     * The path to the socket file
     */
    protected readonly SOCKET_PATH = SOCKET_PATH;

    // Methods -------------------------------------------------------------------------------------

    /**
     * Notify Seeker that a movie was added
     */
    public notifyMovieRequested(ticketId: number) {
        this.request("movie_ticket_added", ticketId).catch((e) => {
            this.log("No response from seeker notifying added movie", e);
        });
    }
}
