All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.redkale.net.sncp.SncpServlet Maven / Gradle / Ivy

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package org.redkale.net.sncp;

import java.util.Objects;
import java.util.concurrent.*;
import org.redkale.net.*;
import org.redkale.service.Service;
import org.redkale.util.*;

/**
 *
 * 

* 详情见: https://redkale.org * * @author zhangjx */ public abstract class SncpServlet extends Servlet implements Comparable { protected final Class type; protected final String serviceName; protected final Service service; protected SncpServlet(String serviceName, Class serviceOrSourceType, Service service) { this.type = serviceOrSourceType; this.service = service; this.serviceName = serviceName; } public Service getService() { return service; } public String getServiceName() { return serviceName; } public Class getServiceType() { return type; } public abstract DLong getServiceid(); protected ExecutorService getExecutor() { Thread thread = Thread.currentThread(); if (thread instanceof WorkThread) { return ((WorkThread) thread).getExecutor(); } return ForkJoinPool.commonPool(); } @Override public final boolean equals(Object obj) { if (!(obj instanceof SncpServlet)) return false; return Objects.equals(getServiceid(), ((SncpServlet) obj).getServiceid()); } @Override public final int hashCode() { return Objects.hashCode(getServiceid()); } @Override public int compareTo(SncpServlet o) { return 0; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy