extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/ssp/SspInfoResult.java

Code
Comments
Other
Rev Date Author Line
5955 01 Jun 20 nicklas 1 package net.sf.basedb.reggie.ssp;
5955 01 Jun 20 nicklas 2
5955 01 Jun 20 nicklas 3 import java.util.Map;
5955 01 Jun 20 nicklas 4
5955 01 Jun 20 nicklas 5 /**
5955 01 Jun 20 nicklas 6   Holds the information result for a given model.
5955 01 Jun 20 nicklas 7   @since 4.24
5955 01 Jun 20 nicklas 8 */
5955 01 Jun 20 nicklas 9 public class SspInfoResult 
5955 01 Jun 20 nicklas 10 {
5955 01 Jun 20 nicklas 11   
5955 01 Jun 20 nicklas 12   private final SspModel model;
5955 01 Jun 20 nicklas 13   private final String result;
5955 01 Jun 20 nicklas 14   private final String[] classes;
5955 01 Jun 20 nicklas 15   private final String[] translatedClasses;
5955 01 Jun 20 nicklas 16   
5955 01 Jun 20 nicklas 17   public SspInfoResult(SspModel model, String result, Map<String, String> translations)
5955 01 Jun 20 nicklas 18   {
5955 01 Jun 20 nicklas 19     this.model = model;
5955 01 Jun 20 nicklas 20     this.result = result;
5955 01 Jun 20 nicklas 21     this.classes = result.split("\\;");
5955 01 Jun 20 nicklas 22     this.translatedClasses = new String[this.classes.length];
5955 01 Jun 20 nicklas 23     for (int i = 0; i < this.classes.length; i++)
5955 01 Jun 20 nicklas 24     {
5955 01 Jun 20 nicklas 25       translatedClasses[i] = translate(classes[i], translations);
5955 01 Jun 20 nicklas 26     }
5955 01 Jun 20 nicklas 27   }
5955 01 Jun 20 nicklas 28   
5955 01 Jun 20 nicklas 29   private String translate(String word, Map<String, String> translations)
5955 01 Jun 20 nicklas 30   {
5955 01 Jun 20 nicklas 31     if (word == null) return null;
5955 01 Jun 20 nicklas 32     String translatedWord = translations.get(word.toLowerCase());
5955 01 Jun 20 nicklas 33     return translatedWord == null ? word : translatedWord;
5955 01 Jun 20 nicklas 34   }
5955 01 Jun 20 nicklas 35   
5955 01 Jun 20 nicklas 36   public SspModel getModel()
5955 01 Jun 20 nicklas 37   {
5955 01 Jun 20 nicklas 38     return model;
5955 01 Jun 20 nicklas 39   }
5955 01 Jun 20 nicklas 40   
5955 01 Jun 20 nicklas 41   public String getResult()
5955 01 Jun 20 nicklas 42   {
5955 01 Jun 20 nicklas 43     return result;
5955 01 Jun 20 nicklas 44   }
5955 01 Jun 20 nicklas 45   
5955 01 Jun 20 nicklas 46   public String[] getClasses()
5955 01 Jun 20 nicklas 47   {
5955 01 Jun 20 nicklas 48     return classes;
5955 01 Jun 20 nicklas 49   }
5955 01 Jun 20 nicklas 50   
5955 01 Jun 20 nicklas 51   public String[] getTranslatedClasses()
5955 01 Jun 20 nicklas 52   {
5955 01 Jun 20 nicklas 53     return translatedClasses;
5955 01 Jun 20 nicklas 54   }
5955 01 Jun 20 nicklas 55
5955 01 Jun 20 nicklas 56 }