1 32 package net.sf.retrotranslator.transformer; 33 34 import java.util.*; 35 import net.sf.retrotranslator.runtime.impl.RuntimeTools; 36 37 40 class EmbeddingConverter { 41 42 private String embeddingPrefix; 43 private Map<String , Boolean > runtimeFileNames = new HashMap<String , Boolean >(); 44 private Map<String , Boolean > concurrentFileNames = new HashMap<String , Boolean >(); 45 46 public EmbeddingConverter(String embed) { 47 this.embeddingPrefix = embed.replace('.', '/') + '/'; 48 } 49 50 public Map<String , Boolean > getRuntimeFileNames() { 51 return runtimeFileNames; 52 } 53 54 public Map<String , Boolean > getConcurrentFileNames() { 55 return concurrentFileNames; 56 } 57 58 public String convertFileName(String fileName) { 59 return getMap(fileName) == null ? fileName : embeddingPrefix + fileName; 60 } 61 62 public String convertClassName(String className) { 63 Map<String , Boolean > map = getMap(className); 64 if (map == null) { 65 return className; 66 } 67 String key = className + RuntimeTools.CLASS_EXTENSION; 68 if (!map.containsKey(key)) { 69 map.put(key, Boolean.FALSE); 70 } 71 return embeddingPrefix + className; 72 } 73 74 private Map<String , Boolean > getMap(String name) { 75 if (name.startsWith(TransformerTools.RUNTIME_PREFIX)) { 76 return runtimeFileNames; 77 } 78 if (name.startsWith(TransformerTools.CONCURRENT_PREFIX)) { 79 return concurrentFileNames; 80 } 81 return null; 82 } 83 84 } 85 | Popular Tags |