Package server.restful
Klasse JSIDPlay2Server
java.lang.Object
server.restful.JSIDPlay2Server
Use this class to start JSIDPlay2 in server mode!
Server part of JSIDPlay2 to answer server requests like:
1st) get a stream with SID music as MP3 for the mobile version or
2nd) get a stream of a C64 demo as RTMP stream for the mobile version or
3rd) WhatsSID? Which tune is currently played?
- Autor:
- ken
-
Verschachtelte Klassen - Übersicht
Verschachtelte KlassenModifizierer und TypKlasseBeschreibungprivate static classstatic class -
Feldübersicht
FelderModifizierer und TypFeldBeschreibungprivate static final ConfigService.ConfigurationTypestatic final StringContext root of web appstatic final StringContext root of all servletsstatic final StringContext root of start pagestatic final StringContext root of static pagesstatic final StringContext root of webjarsprivate static javax.persistence.EntityManagerFactoryprivate static javax.persistence.EntityManagerFactoryprivate static final URLprivate static JSIDPlay2Serverprivate static final URLConfiguration of usernames, passwords, and rolesprivate static final Loggerprivate final JSIDPlay2Server.JSIDPlay2ServerParametersstatic final StringFilename of the configuration containing username, password, and role.static final StringRealm namestatic final StringAdmin rolestatic final StringUser roleprivate static final URLstatic final StringFilename of the configuration file to access additional directories.private static javax.persistence.EntityManagerFactoryprivate static final ThreadLocal<javax.persistence.EntityManager> private static final ThreadLocal<javax.persistence.EntityManager> private static final ThreadLocal<javax.persistence.EntityManager> private Timerprivate org.apache.catalina.startup.Tomcatstatic final String -
Konstruktorübersicht
Konstruktoren -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprivate org.apache.catalina.ContextaddContext(org.apache.catalina.startup.Tomcat tomcat) private static voidprivate voidaddHealthCheckValve(org.apache.catalina.startup.Tomcat tomcat) private static voidaddRemoteIpValve(org.apache.catalina.startup.Tomcat tomcat) private voidaddServletFilters(org.apache.catalina.Context context, List<jakarta.servlet.Servlet> servlets) private List<jakarta.servlet.Servlet> addServlets(org.apache.catalina.Context context) private voidaddServletSecurity(org.apache.catalina.Context context, List<jakarta.servlet.Servlet> servlets) private static JSIDPlay2Server.HealthCheckResultcheckHealthy(boolean httpEnabled, boolean httpsEnabled, String hostname, int httpPort, int httpsPort) private static JSIDPlay2Servercreate(Configuration configuration) private org.apache.catalina.connector.ConnectorcreateHttpConnector(EmulationSection emulationSection) private org.apache.catalina.connector.ConnectorcreateHttpsConnector(EmulationSection emulationSection) private jakarta.servlet.MultipartConfigElementcreateMultipartConfigElement(jakarta.servlet.annotation.WebServlet webServlet, jakarta.servlet.annotation.MultipartConfig multipartConfig) private org.apache.catalina.startup.Tomcatprivate static voidexit(int rc) static voidstatic voidprivate static voidfreeEntityManager(ThreadLocal<javax.persistence.EntityManager> threadLocalEntityManager) static voidstatic javax.persistence.EntityManagerstatic javax.persistence.EntityManagerprivate static javax.persistence.EntityManagergetEntityManager(javax.persistence.EntityManagerFactory entityManagerFactory, ThreadLocal<javax.persistence.EntityManager> threadLocalEntityManager) getFilterParameters(jakarta.servlet.http.HttpFilter servletFilter, jakarta.servlet.Servlet servlet) static JSIDPlay2ServergetInstance(Configuration configuration) static JSIDPlay2ServergetInstance(Configuration configuration, Runnable configSaver) private URLSearch for a user, password, and role configuration file.
Note:If no configuration file is found internal configuration is usedprivate PropertiesSearch for configuration of additional accessible directories.private static org.apache.tomcat.util.net.SSLHostConfiggetSslHostConfig(EmulationSection emulationSection) static javax.persistence.EntityManagerprivate voidstatic voidprivate static voidprintStartupInfo(Configuration configuration) private voidsetConnectors(org.apache.catalina.startup.Tomcat tomcat) private voidsetRealm(org.apache.catalina.startup.Tomcat tomcat) voidstart()voidstop()private static booleanurlReachable(String url)
-
Felddetails
-
LOG
-
URL_SCHEMA
- Siehe auch:
-
CONTEXT_ROOT
Context root of web app- Siehe auch:
-
CONTEXT_ROOT_START_PAGE
Context root of start page- Siehe auch:
-
CONTEXT_ROOT_STATIC
Context root of static pages- Siehe auch:
-
CONTEXT_ROOT_WEBJARS
Context root of webjars- Siehe auch:
-
CONTEXT_ROOT_SERVLET
Context root of all servlets- Siehe auch:
-
ROLE_USER
User role- Siehe auch:
-
ROLE_ADMIN
Admin role- Siehe auch:
-
SERVLET_UTIL_CONFIG_FILE
Filename of the configuration file to access additional directories.e.g. "/MP3=/media/nas1/mp3,true" (top-level logical directory name=real directory name, is an admin role required?)
- Siehe auch:
-
REALM_NAME
Realm name- Siehe auch:
-
REALM_CONFIG
Filename of the configuration containing username, password, and role. For an example, please refer to the internal resource tomcat-users.xml- Siehe auch:
-
INTERNAL_REALM_CONFIG
Configuration of usernames, passwords, and roles -
SERVLET_CLASSES_LIST
-
FILTER_CLASSES_LIST
-
INSTANCE
-
ENTITY_MANAGER_FACTORY
private static javax.persistence.EntityManagerFactory ENTITY_MANAGER_FACTORY -
DEBUG_ENTITY_MANAGER_FACTORY
private static javax.persistence.EntityManagerFactory DEBUG_ENTITY_MANAGER_FACTORY -
STATISTICS_ENTITY_MANAGER
private static javax.persistence.EntityManagerFactory STATISTICS_ENTITY_MANAGER -
CDI
-
THREAD_LOCAL_ENTITY_MANAGER
-
THREAD_LOCAL_DEBUG_ENTITY_MANAGER
-
THREAD_LOCAL_STATISTICS_ENTITY_MANAGER
private static final ThreadLocal<javax.persistence.EntityManager> THREAD_LOCAL_STATISTICS_ENTITY_MANAGER -
CONFIGURATION_TYPE
-
parameters
-
tomcat
private org.apache.catalina.startup.Tomcat tomcat -
timer
-
-
Konstruktordetails
-
JSIDPlay2Server
private JSIDPlay2Server()
-
-
Methodendetails
-
getInstance
-
getInstance
-
create
-
start
public void start() throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException, org.apache.catalina.LifecycleException, ClassNotFoundException, IOException- Löst aus:
InstantiationExceptionIllegalAccessExceptionIllegalArgumentExceptionInvocationTargetExceptionNoSuchMethodExceptionSecurityExceptionorg.apache.catalina.LifecycleExceptionClassNotFoundExceptionIOException
-
stop
public void stop() throws org.apache.catalina.LifecycleException- Löst aus:
org.apache.catalina.LifecycleException
-
getServletUtilProperties
Search for configuration of additional accessible directories. Search in CWD and in the HOME folder. -
createTomcat
private org.apache.catalina.startup.Tomcat createTomcat() throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException, ClassNotFoundException, IOException -
addHealthCheckValve
private void addHealthCheckValve(org.apache.catalina.startup.Tomcat tomcat) -
addRemoteIpValve
private static void addRemoteIpValve(org.apache.catalina.startup.Tomcat tomcat) -
setRealm
- Löst aus:
MalformedURLException
-
getRealmConfigURL
Search for a user, password, and role configuration file.
Note:If no configuration file is found internal configuration is used- Gibt zurück:
- user, password, and role configuration file
- Löst aus:
MalformedURLException- error locating the realm configuration
-
setConnectors
private void setConnectors(org.apache.catalina.startup.Tomcat tomcat) -
createHttpConnector
private org.apache.catalina.connector.Connector createHttpConnector(EmulationSection emulationSection) -
createHttpsConnector
private org.apache.catalina.connector.Connector createHttpsConnector(EmulationSection emulationSection) -
getSslHostConfig
private static org.apache.tomcat.util.net.SSLHostConfig getSslHostConfig(EmulationSection emulationSection) -
addContext
private org.apache.catalina.Context addContext(org.apache.catalina.startup.Tomcat tomcat) -
addServlets
private List<jakarta.servlet.Servlet> addServlets(org.apache.catalina.Context context) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException, IOException, ClassNotFoundException -
inject
- Löst aus:
IllegalAccessException
-
createMultipartConfigElement
private jakarta.servlet.MultipartConfigElement createMultipartConfigElement(jakarta.servlet.annotation.WebServlet webServlet, jakarta.servlet.annotation.MultipartConfig multipartConfig) -
addServletFilters
private void addServletFilters(org.apache.catalina.Context context, List<jakarta.servlet.Servlet> servlets) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException, IOException, ClassNotFoundException -
getFilterParameters
-
addServletSecurity
private void addServletSecurity(org.apache.catalina.Context context, List<jakarta.servlet.Servlet> servlets) -
exit
private static void exit(int rc) -
main
-
printStartupInfo
-
checkHealthy
private static JSIDPlay2Server.HealthCheckResult checkHealthy(boolean httpEnabled, boolean httpsEnabled, String hostname, int httpPort, int httpsPort) -
urlReachable
-
addDatabaseAppender
private static void addDatabaseAppender() -
getEntityManager
- Löst aus:
IOException
-
freeEntityManager
public static void freeEntityManager() -
getDebugEntityManager
- Löst aus:
IOException
-
freeDebugEntityManager
public static void freeDebugEntityManager() -
getStatisticsEntityManager
- Löst aus:
IOException
-
freeStatisticsEntityManager
public static void freeStatisticsEntityManager() -
getEntityManager
private static javax.persistence.EntityManager getEntityManager(javax.persistence.EntityManagerFactory entityManagerFactory, ThreadLocal<javax.persistence.EntityManager> threadLocalEntityManager) throws IOException - Löst aus:
IOException
-
freeEntityManager
private static void freeEntityManager(ThreadLocal<javax.persistence.EntityManager> threadLocalEntityManager)
-