@Override
    public void save(TimeTrackerEntry database) {
        TimeTracker timeTracker = buildTimeTracker(database);
        try {
            JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class.getPackage().getName(),
                    ObjectFactory.class.getClassLoader());
            // TODO fix formatted output
            Marshaller marshaller = jaxbContext.createMarshaller();
            marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
            marshaller.marshal(timeTracker, openStream());
        } catch (JAXBException e) {
            throw new RuntimeException(e);
        }
    }