package com.ntlab.irisserver.models; import org.springframework.stereotype.Component; import java.io.*; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import org.apache.catalina.core.ApplicationContext; import com.ntlab.irisserver.utils.Base64Decode; import org.apache.catalina.core.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.beans.BeansException; import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.Response; @Component public class KeywordManager { private static KeywordManager theInstance = null; String[] keywords = {"0"}; /*= {"りんご", "ごりら","らっぱ","ぱんつ","つみき",};*/ private List<String> FileRead(String path) { List<String> ss = new ArrayList<String>(); try { BufferedReader buffReader = new BufferedReader(new FileReader(path)); String s; while ((s = buffReader.readLine()) != null) { ss.add(s); } buffReader.close(); } catch (IOException e) { e.printStackTrace(); } return ss; } public static KeywordManager getInstance() { if(theInstance == null) { theInstance = new KeywordManager(); } return theInstance; } public String[] getKeywords(String path){ var response = Response.status(Response.Status.NO_CONTENT); if(path == null){ response.status(400).entity("パスがありません"); throw new WebApplicationException(response.build()); } else if(FileRead(path).size() == 0){ response.status(400).entity(path+"に対応したファイルがありません"); throw new WebApplicationException(response.build()); } else { keywords = FileRead(path).toArray(new String[FileRead(path).size()]); } return keywords; } }