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

org.onetwo.common.spring.utils.SpringResourceAdapterImpl Maven / Gradle / Ivy

package org.onetwo.common.spring.utils;

import java.io.File;
import java.io.IOException;
import java.util.List;

import org.onetwo.common.exception.BaseException;
import org.onetwo.common.file.FileUtils;
import org.onetwo.common.log.JFishLoggerFactory;
import org.onetwo.common.propconf.ResourceAdapterImpl;
import org.slf4j.Logger;
import org.springframework.core.io.Resource;

public class SpringResourceAdapterImpl extends ResourceAdapterImpl {

	private final Logger logger = JFishLoggerFactory.getLogger(this.getClass());
			
	public SpringResourceAdapterImpl(Resource resource) {
		super(resource);
	}
	
	public SpringResourceAdapterImpl(Resource resource, String postfix) {
		super(resource, postfix);
	}
	
	@Override
	public boolean exists(){
		return this.resource.exists();
	}

	@Override
	public List readAsList(){
		if(isSupportedToFile()){
			return FileUtils.readAsList(getFile());
		}else{
			Resource res = (Resource)getResource();
			try {
				return FileUtils.readAsList(res.getInputStream());
			} catch (IOException e) {
				throw new BaseException("read content error: " + this, e);
			}
		}
	}

	
	@Override
	public boolean isSupportedToFile() {
		try {
			return resource.getFile()!=null;
		} catch (Exception e) {
			logger.error(e.getMessage());
			return false;
		}
	}

	@Override
	public File getFile() {
		try {
			return resource.getFile();
		} catch (Exception e) {
			logger.error(e.getMessage());
			return null;
		}
	}


	@Override
	public String getName() {
		try {
			return resource.getFilename();
		} catch (Exception e) {
			logger.error(e.getMessage());
			return resource.toString();
		}
	}
	
	public String toString(){
		return resource.toString();
	}
	

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy