001package org.kuali.common.util.metainf.spring; 002 003import org.kuali.common.util.Assert; 004import org.kuali.common.util.metainf.service.MetaInfUtils; 005 006public class MetaInfConfigUtils { 007 008 private static final String INCLUDES = "includes"; 009 private static final String EXCLUDES = "excludes"; 010 011 /** 012 * <code>group</code> is optional 013 * 014 * <pre> 015 * metainf.[prefix].[group].[suffix] 016 * 017 * metainf.[prefix].[suffix] 018 * </pre> 019 */ 020 public static String getKey(String prefix, MetaInfGroup group, String suffix) { 021 Assert.noNullsWithMsg("prefix and suffix are required", prefix, suffix); 022 StringBuilder sb = new StringBuilder(); 023 sb.append(MetaInfUtils.PROPERTY_PREFIX); 024 sb.append("."); 025 sb.append(prefix); 026 if (group != null) { 027 sb.append("."); 028 sb.append(group.name().toLowerCase()); 029 } 030 sb.append("."); 031 sb.append(suffix); 032 return sb.toString(); 033 } 034 035 /** 036 * <code>metainf.[prefix].includes</code> 037 */ 038 public static String getIncludesKey(String prefix) { 039 return getKey(prefix, null, INCLUDES); 040 } 041 042 /** 043 * <code>metainf.[prefix].excludes</code> 044 */ 045 public static String getExcludesKey(String prefix) { 046 return getKey(prefix, null, EXCLUDES); 047 } 048 049 /** 050 * <code>metainf.[prefix].[group].includes</code> 051 */ 052 public static String getIncludesKey(MetaInfGroup group, String prefix) { 053 return getKey(prefix, group, INCLUDES); 054 } 055 056 /** 057 * <code>metainf.[prefix].[group].excludes</code> 058 */ 059 public static String getExcludesKey(MetaInfGroup group, String prefix) { 060 return getKey(prefix, group, EXCLUDES); 061 } 062 063}