Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * @(#)Cfg0.java		Created at 2013-2-24
   * 
   * Copyright (c) 2011-2013 azolla.org All rights reserved.
   * Azolla PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. 
   */
  package org.azolla.l.ling.cfg;
  
  import java.io.File;
 
 
 
Cfg0

Author(s):
sk@azolla.org
Since:
ADK1.0
 
 public final class Cfg0
 {
     private static final Logger                              LOG   = LoggerFactory.getLogger(Cfg0.class);
 
     private static final LoadingCache<Class<?>, JAXBContextCACHE = CacheBuilder.newBuilder().softValues().build(ConfigLoader.single());
 
     private static class ConfigLoader extends CacheLoader<Class<?>, JAXBContext>
     {
         private static ConfigLoader instance;
 
         private ConfigLoader()
         {
 
         }
 
         public static ConfigLoader single()
         {
             return null ==  ? new ConfigLoader() : ;
         }
 
         @Override
         public JAXBContext load(Class<?> keythrows Exception
         {
             return JAXBContext.newInstance(key);
         }
     }
 
     private static JAXBContext getJAXBContext(Class<?> clazzthrows ExecutionException
     {
         return .get(clazz);
     }
 
     @SuppressWarnings("unchecked")
     public static <T> T unmarshal(Class<T> clazzFile file)
     {
         T rtnT = null;
 
         try
         {
             rtnT = (T) getJAXBContext(clazz).createUnmarshaller().unmarshal(file);
         }
         catch(Exception e)
         {
             .error(., KV.ins("clazz"clazz).put("filePath"file), e);
             rtnT = null;
         }
 
         return rtnT;
     }
 
     public static <T> boolean marshal(T tFile file)
     {
         return marshal(tfile.);
     }
 
     //encoding [null to {@code Encoding#UTF8}]
     public static <T> boolean marshal(T tFile file, @Nullable String encoding)
     {
         boolean rtnBoolean = true;
         encoding = Strings.isNullOrEmpty(encoding) ? . : encoding;
         try
         {
             Marshaller m = getJAXBContext(t.getClass()).createMarshaller();
             m.setProperty(.true);
             m.setProperty(.encoding);
             m.marshal(tfile);
         }
        catch(Exception e)
        {
            .error(., KV.ins("t"t).put("file"file).put("encoding"encoding), e);
            rtnBoolean = false;
        }
        return rtnBoolean;
    }
New to GrepCode? Check out our FAQ X