Search in sources :

Example 6 with Cycles

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

the class XmlEngineCyclesOutput method writeTo.

@Override
protected void writeTo(OutputParams params, OutputStream stream, TrainDiagram diagram) throws OutputException {
    try {
        EngineCyclesExtractor tuce = new EngineCyclesExtractor(SelectionHelper.selectCycles(params, diagram, diagram.getEngineCycleType()));
        EngineCycles cycles = new EngineCycles(tuce.getEngineCycles());
        JAXBContext context = JAXBContext.newInstance(EngineCycles.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 : EngineCyclesExtractor(net.parostroj.timetable.output2.impl.EngineCyclesExtractor) Marshaller(javax.xml.bind.Marshaller) OutputException(net.parostroj.timetable.output2.OutputException) EngineCycles(net.parostroj.timetable.output2.impl.EngineCycles) JAXBContext(javax.xml.bind.JAXBContext) OutputStreamWriter(java.io.OutputStreamWriter) Writer(java.io.Writer) OutputStreamWriter(java.io.OutputStreamWriter) OutputException(net.parostroj.timetable.output2.OutputException)

Example 7 with Cycles

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

the class StartsTemplateBinding method addSpecific.

@Override
protected void addSpecific(OutputParams params, Map<String, Object> map, TrainDiagram diagram, Locale locale) {
    Integer startTime = params.getParamValue("start.time", Integer.class);
    // extract positions
    PositionsExtractor pe = new PositionsExtractor(diagram);
    List<Position> engines = pe.getStartPositions(diagram.getEngineCycleType().getCycles(), startTime);
    List<Position> trainUnits = pe.getStartPositions(diagram.getTrainUnitCycleType().getCycles(), startTime);
    List<Cycles> customCycles = pe.getStartPositionsCustom(startTime);
    // call template
    map.put("engines", engines);
    map.put("train_units", trainUnits);
    map.put("custom_cycles", customCycles);
    map.put("start_time", startTime);
}
Also used : Cycles(net.parostroj.timetable.output2.impl.Cycles) PositionsExtractor(net.parostroj.timetable.output2.impl.PositionsExtractor) Position(net.parostroj.timetable.output2.impl.Position)

Aggregations

OutputStreamWriter (java.io.OutputStreamWriter)4 Writer (java.io.Writer)4 JAXBContext (javax.xml.bind.JAXBContext)4 Marshaller (javax.xml.bind.Marshaller)4 OutputException (net.parostroj.timetable.output2.OutputException)4 Cycles (net.parostroj.timetable.output2.impl.Cycles)3 Position (net.parostroj.timetable.output2.impl.Position)3 PositionsExtractor (net.parostroj.timetable.output2.impl.PositionsExtractor)3 TrainsCycleType (net.parostroj.timetable.model.TrainsCycleType)2 OutputParam (net.parostroj.timetable.output2.OutputParam)2 CustomCycles (net.parostroj.timetable.output2.impl.CustomCycles)1 CustomCyclesExtractor (net.parostroj.timetable.output2.impl.CustomCyclesExtractor)1 DriverCycles (net.parostroj.timetable.output2.impl.DriverCycles)1 DriverCyclesExtractor (net.parostroj.timetable.output2.impl.DriverCyclesExtractor)1 EngineCycles (net.parostroj.timetable.output2.impl.EngineCycles)1 EngineCyclesExtractor (net.parostroj.timetable.output2.impl.EngineCyclesExtractor)1 StartPositions (net.parostroj.timetable.output2.impl.StartPositions)1