org.apache.jena.fuseki.validation.ValidatorBase Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jena-fuseki1 Show documentation
Show all versions of jena-fuseki1 Show documentation
Fuseki is a SPARQL 1.1 Server
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.jena.fuseki.validation;
import java.io.IOException ;
import javax.servlet.ServletConfig ;
import javax.servlet.ServletException ;
import javax.servlet.ServletOutputStream ;
import javax.servlet.http.HttpServlet ;
import javax.servlet.http.HttpServletRequest ;
import javax.servlet.http.HttpServletResponse ;
import org.apache.jena.fuseki.Fuseki ;
import org.apache.jena.fuseki.servlets.ServletBase ;
import org.slf4j.Logger ;
public abstract class ValidatorBase extends HttpServlet
{
protected static Logger serviceLog = Fuseki.requestLog ;
public static final String cssFile = "/fuseki.css" ;
public static final String respService = "X-Service" ;
@Override
public void init() throws ServletException
{ super.init() ; }
@Override
public void init(ServletConfig config) throws ServletException
{ super.init(config) ; }
@Override
public void destroy()
{ }
@Override
public void doGet(HttpServletRequest httpRequest, HttpServletResponse httpResponse)
{ execute(httpRequest, httpResponse) ; }
@Override
public void doPost(HttpServletRequest httpRequest, HttpServletResponse httpResponse)
{ execute(httpRequest, httpResponse) ; }
protected abstract void execute(HttpServletRequest httpRequest, HttpServletResponse httpResponse) ;
protected static void setHeaders(HttpServletResponse httpResponse)
{
ServletBase.setCommonHeaders(httpResponse) ;
httpResponse.setCharacterEncoding("UTF-8") ;
httpResponse.setContentType("text/html") ;
httpResponse.setHeader(respService, "Fuseki/ARQ SPARQL Query Validator: http://jena.apache.org/") ;
}
protected static String htmlQuote(String str)
{
StringBuilder sBuff = new StringBuilder() ;
for ( int i = 0 ; i < str.length() ; i++ )
{
char ch = str.charAt(i) ;
switch (ch)
{
case '<': sBuff.append("<") ; break ;
case '>': sBuff.append(">") ; break ;
case '&': sBuff.append("&") ; break ;
default:
// Work around Eclipe bug with StringBuffer.append(char)
//try { sBuff.append(ch) ; } catch (Exception ex) {}
sBuff.append(ch) ;
break ;
}
}
return sBuff.toString() ;
}
protected static void startFixed(ServletOutputStream outStream) throws IOException
{
outStream.println("") ;
}
protected static void columns(String prefix, ServletOutputStream outStream) throws IOException
{
outStream.print(prefix) ;
outStream.println(" 1 2 3 4 5 6 7") ;
outStream.print(prefix) ;
outStream.println("12345678901234567890123456789012345678901234567890123456789012345678901234567890") ;
}
protected static void finishFixed(ServletOutputStream outStream) throws IOException
{
outStream.println("
") ;
}
protected static void printHead(ServletOutputStream outStream, String title) throws IOException
{
outStream.println("") ;
outStream.println(" "+title+" ") ;
outStream.println(" ") ;
outStream.println(" ") ;
//outStream.println() ;
outStream.println("") ;
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy