Search in sources :

Example 1 with CustomCyclesExtractor

use of net.parostroj.timetable.output2.impl.CustomCyclesExtractor in project grafikon by jub77.

the class CustomCyclesTemplateBinding method addSpecific.

@Override
protected void addSpecific(OutputParams params, Map<String, Object> binding, TrainDiagram diagram, Locale locale) {
    // check for type
    OutputParam param = params.get("cycle_type");
    TrainsCycleType type = param != null ? param.getValue(TrainsCycleType.class) : null;
    // extract cycles
    CustomCyclesExtractor ece = new CustomCyclesExtractor(SelectionHelper.selectCycles(params, diagram, type));
    List<CustomCycle> cycles = ece.getCycles();
    // call template
    binding.put("cycles", cycles);
}
Also used : OutputParam(net.parostroj.timetable.output2.OutputParam) TrainsCycleType(net.parostroj.timetable.model.TrainsCycleType)

Example 2 with CustomCyclesExtractor

use of net.parostroj.timetable.output2.impl.CustomCyclesExtractor in project grafikon by jub77.

the class XmlCustomCyclesOutput method writeTo.

@Override
protected void writeTo(OutputParams params, OutputStream stream, TrainDiagram diagram) throws OutputException {
    try {
        // check for type
        OutputParam param = params.get("cycle_type");
        TrainsCycleType type = param != null ? param.getValue(TrainsCycleType.class) : null;
        // extract
        CustomCyclesExtractor tuce = new CustomCyclesExtractor(SelectionHelper.selectCycles(params, diagram, type));
        CustomCycles cycles = new CustomCycles(tuce.getCycles());
        JAXBContext context = JAXBContext.newInstance(CustomCycles.class);
        Marshaller m = context.createMarshaller();
        m.setProperty(Marshaller.JAXB_ENCODING, this.getCharset().name());
        m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
        Writer writer = new OutputStreamWriter(stream, this.getCharset());
        m.marshal(cycles, writer);
    } catch (Exception e) {
        throw new OutputException(e);
    }
}
Also used : Marshaller(javax.xml.bind.Marshaller) CustomCycles(net.parostroj.timetable.output2.impl.CustomCycles) OutputParam(net.parostroj.timetable.output2.OutputParam) OutputException(net.parostroj.timetable.output2.OutputException) CustomCyclesExtractor(net.parostroj.timetable.output2.impl.CustomCyclesExtractor) JAXBContext(javax.xml.bind.JAXBContext) OutputStreamWriter(java.io.OutputStreamWriter) Writer(java.io.Writer) OutputStreamWriter(java.io.OutputStreamWriter) OutputException(net.parostroj.timetable.output2.OutputException) TrainsCycleType(net.parostroj.timetable.model.TrainsCycleType)

Aggregations

TrainsCycleType (net.parostroj.timetable.model.TrainsCycleType)2 OutputParam (net.parostroj.timetable.output2.OutputParam)2 OutputStreamWriter (java.io.OutputStreamWriter)1 Writer (java.io.Writer)1 JAXBContext (javax.xml.bind.JAXBContext)1 Marshaller (javax.xml.bind.Marshaller)1 OutputException (net.parostroj.timetable.output2.OutputException)1 CustomCycles (net.parostroj.timetable.output2.impl.CustomCycles)1 CustomCyclesExtractor (net.parostroj.timetable.output2.impl.CustomCyclesExtractor)1