All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.crabshue.commons.xproc.datastore.FileDataStore Maven / Gradle / Ivy

package com.crabshue.commons.xproc.datastore;

import com.xmlcalabash.io.DataStore;

import java.io.File;
import java.io.IOException;
import java.net.URI;

public class FileDataStore implements DataStore {

    private final String myBase;
    private DataStore originalStore;

    public FileDataStore(File base) {
        super();
        this.myBase = base.toURI().toString();
    }

    public void setOriginalStore(DataStore originalStore) {
        this.originalStore = originalStore;
    }

    /* (non-Javadoc)
     * @see com.xmlcalabash.io.DataStore#writeEntry(java.lang.String, java.lang.String, java.lang.String, com.xmlcalabash.io.DataStore.DataWriter)
     */
    @Override
    public URI writeEntry(String href, String base, String media, DataStore.DataWriter handler)
        throws IOException {
        return originalStore.writeEntry(href, myBase, media, handler);
    }

    /* (non-Javadoc)
     * @see com.xmlcalabash.io.DataStore#readEntry(java.lang.String, java.lang.String, java.lang.String, java.lang.String, com.xmlcalabash.io.DataStore.DataReader)
     */
    @Override
    public void readEntry(String href, String base, String accept, String overrideContentType, DataStore.DataReader handler)
        throws IOException {
        originalStore.readEntry(href, myBase, accept, overrideContentType, handler);
    }

    /* (non-Javadoc)
     * @see com.xmlcalabash.io.DataStore#infoEntry(java.lang.String, java.lang.String, java.lang.String, com.xmlcalabash.io.DataStore.DataInfo)
     */
    @Override
    public void infoEntry(String href, String base, String accept, DataStore.DataInfo handler)
        throws IOException {
        originalStore.infoEntry(href, myBase, accept, handler);
    }

    /* (non-Javadoc)
     * @see com.xmlcalabash.io.DataStore#listEachEntry(java.lang.String, java.lang.String, java.lang.String, com.xmlcalabash.io.DataStore.DataInfo)
     */
    @Override
    public void listEachEntry(String href, String base, String accept, DataStore.DataInfo handler)
        throws IOException {
        originalStore.listEachEntry(href, myBase, accept, handler);
    }

    /* (non-Javadoc)
     * @see com.xmlcalabash.io.DataStore#createList(java.lang.String, java.lang.String)
     */
    @Override
    public URI createList(String href, String base) throws IOException {
        return originalStore.createList(href, myBase);
    }

    /* (non-Javadoc)
     * @see com.xmlcalabash.io.DataStore#deleteEntry(java.lang.String, java.lang.String)
     */
    @Override
    public void deleteEntry(String href, String base) throws IOException {
        originalStore.deleteEntry(href, myBase);
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy