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

org.wings.resource.ClassPathJavascriptResource Maven / Gradle / Ivy

The newest version!
package org.wings.resource;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.io.SequenceInputStream;

public class ClassPathJavascriptResource extends ClassPathResource {

    private String callbackCode;

    public ClassPathJavascriptResource(String resourceFileName, String callbackCode) {
        this(resourceFileName, "text/javascript", callbackCode);
    }

    public ClassPathJavascriptResource(String resourceFileName, String mimeType, String callbackCode) {
        super(resourceFileName, mimeType);
        this.callbackCode = callbackCode;
    }

    public ClassPathJavascriptResource(ClassLoader classLoader, String resourceFileName, String callbackCode) {
        super(classLoader, resourceFileName);
        this.callbackCode = callbackCode;
    }

    public ClassPathJavascriptResource(ClassLoader classLoader, String resourceFileName, String mimeType, String callbackCode) {
        super(classLoader, resourceFileName, mimeType);
        this.callbackCode = callbackCode;
    }

    @Override
    protected InputStream getResourceStream() throws ResourceNotFoundException {
        if (callbackCode == null) {
            return super.getResourceStream();
        }
        return new SequenceInputStream(super.getResourceStream(), new ByteArrayInputStream(("\n\n" + callbackCode).getBytes()));
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy