Package plugin.template.ioe

Source Code of plugin.template.ioe.A

/*
* Copyright 2013 eXo Platform SAS
*
* Licensed 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 plugin.template.ioe;

import juzu.Path;
import juzu.Response;
import juzu.impl.common.Tools;
import juzu.io.OutputStream;
import juzu.View;
import juzu.io.Stream;
import juzu.template.Template;

import javax.inject.Inject;
import java.io.IOException;
import java.util.LinkedList;

/** @author <a href="mailto:julien.viet@exoplatform.com">Julien Viet</a> */
public class A {

  @Inject
  @Path("index.gtmpl")
  Template index;

  @View
  public Response.Content index() {
    Stream printer = OutputStream.create(Tools.UTF_8, new Appendable() {
      public Appendable append(CharSequence csq) throws IOException {
        throw new IOException();
      }

      public Appendable append(CharSequence csq, int start, int end) throws IOException {
        throw new IOException();
      }

      public Appendable append(char c) throws IOException {
        throw new IOException();
      }
    });
    index.renderTo(printer);
    final LinkedList<Throwable> errors = new LinkedList<Throwable>();
    printer.close(new Thread.UncaughtExceptionHandler() {
      public void uncaughtException(Thread t, Throwable e) {
        errors.add(e);
      }
    });
    String ret;
    if (errors.size() == 1 && errors.get(0) instanceof IOException) {
      ret = "pass";
    } else {
      ret = "fail";
    }
    return Response.ok(ret);
  }
}
TOP

Related Classes of plugin.template.ioe.A

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.