// Path: core/src/main/java/com/steeleforge/aem/ironsites/wcm/WCMConstants.java
// public enum WCMConstants {
//     INSTANCE;
//     public static final String HTTP = "http";
//     public static final String HTTPS = "https";
//     public static final String PROTOCOL_RELATIVE = "//";
//     public static final String DELIMITER_QUERY = "?";
//     public static final String DELIMITER_FRAGMENT = "#";
//     public static final String DELIMITER_PORT = ":";
//     public static final String DELIMITER_PATH = "/";
//     public static final String DELIMITER_PATH_IDENTIFIER = "--";
//     public static final String DELIMITER_SUFFIX = DELIMITER_PATH;
//     public static final String DELIMITER_EXTENSION = ".";
//     public static final String DELIMITER_SELECTOR = DELIMITER_EXTENSION;
//     public static final String DELIMITER_COMMA = ",";
//     public static final String DELIMITER_COMMA_SPACED = ",";
//     public static final String DELIMITER_MULTIFIELD = "|";
//     public static final String PATH_FAVICON = "/favicon.ico";
//     public static final String HTML = "html";
//     public static final String HEADER_LOCATION = "Location";
// }


import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
import com.adobe.cq.sightly.WCMUse;
import com.day.cq.tagging.Tag;
import com.day.cq.tagging.TagManager;
import com.steeleforge.aem.ironsites.wcm.WCMConstants;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
        List<Tag> tags = new ArrayList<Tag>();
        
        Tag tag = null;
        for(String id : tagIDs) {
            tag = tm.resolve(id);
            if (null != tag) tags.add(tag);
            tag = null;
        }
        
        return tags;
    }
    
    /**
     * @param tagIDs
     * @return list of tag descriptions given array of IDs
     */
    public List<String> getTagDescriptions(final String[] tagIDs) {
        List<String> descriptions = new ArrayList<String>();
        for(Tag tag : getTags(style)) {
            if (StringUtils.isNotBlank(tag.getDescription())) {
                descriptions.add(tag.getDescription());
            }
        }
        return descriptions;
    }
    
    /**
     * @return style string from style option or property
     */
    public String getStyles() {
// Path: core/src/main/java/com/steeleforge/aem/ironsites/wcm/WCMConstants.java
// public enum WCMConstants {
//     INSTANCE;
//     public static final String HTTP = "http";
//     public static final String HTTPS = "https";
//     public static final String PROTOCOL_RELATIVE = "//";
//     public static final String DELIMITER_QUERY = "?";
//     public static final String DELIMITER_FRAGMENT = "#";
//     public static final String DELIMITER_PORT = ":";
//     public static final String DELIMITER_PATH = "/";
//     public static final String DELIMITER_PATH_IDENTIFIER = "--";
//     public static final String DELIMITER_SUFFIX = DELIMITER_PATH;
//     public static final String DELIMITER_EXTENSION = ".";
//     public static final String DELIMITER_SELECTOR = DELIMITER_EXTENSION;
//     public static final String DELIMITER_COMMA = ",";
//     public static final String DELIMITER_COMMA_SPACED = ",";
//     public static final String DELIMITER_MULTIFIELD = "|";
//     public static final String PATH_FAVICON = "/favicon.ico";
//     public static final String HTML = "html";
//     public static final String HEADER_LOCATION = "Location";
// }


// Path: core/src/main/java/com/steeleforge/aem/ironsites/wcm/components/StyleUse.java
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
import com.adobe.cq.sightly.WCMUse;
import com.day.cq.tagging.Tag;
import com.day.cq.tagging.TagManager;
import com.steeleforge.aem.ironsites.wcm.WCMConstants;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

        List<Tag> tags = new ArrayList<Tag>();
        
        Tag tag = null;
        for(String id : tagIDs) {
            tag = tm.resolve(id);
            if (null != tag) tags.add(tag);
            tag = null;
        }
        
        return tags;
    }
    
    /**
     * @param tagIDs
     * @return list of tag descriptions given array of IDs
     */
    public List<String> getTagDescriptions(final String[] tagIDs) {
        List<String> descriptions = new ArrayList<String>();
        for(Tag tag : getTags(style)) {
            if (StringUtils.isNotBlank(tag.getDescription())) {
                descriptions.add(tag.getDescription());
            }
        }
        return descriptions;
    }
    
    /**
     * @return style string from style option or property
     */
    public String getStyles() {
        return StringUtils.join(getTagDescriptions(style), WCMConstants.DELIMITER_COMMA_SPACED);