All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.day.cq.mcm.emailprovider.types.EmailTools Maven / Gradle / Ivy

/*
 * ***********************************************************************
 *
 *  ADOBE CONFIDENTIAL
 *  ___________________
 *
 *   Copyright 2012 Adobe Systems Incorporated
 *   All Rights Reserved.
 *
 *  NOTICE:  All information contained herein is, and remains
 *  the property of Adobe Systems Incorporated and its suppliers,
 *  if any.  The intellectual and technical concepts contained
 *  herein are proprietary to Adobe Systems Incorporated and its
 *  suppliers and are protected by trade secret or copyright law.
 *  Dissemination of this information or reproduction of this material
 *  is strictly forbidden unless prior written permission is obtained
 *  from Adobe Systems Incorporated.
 * ************************************************************************
 */

package com.day.cq.mcm.emailprovider.types;

import java.util.Map;

import org.apache.commons.lang.StringUtils;

/**
 * Defines interface for all the tools that are supported by external mail provider. 
 * These tools are basically a mapping of a name with the corresponding HTML
 */
public interface EmailTools {

    /**
     * This function adds a tool mapping.
     * @param toolName name of the tool
     * @param toolHtml The HTML associated with the tool.
     * @param toolText The text associated with the tool.
     */
    public void addMapping(String toolName, String toolHtml, String toolText);
    
    /**
     * This method removes a tool mapping.
     * @param toolName the name of the tool.
     */
    public void removeMapping(String toolName);

    /**
     * This method returns a HTML mapping associated with the tool.
     * @param toolName name of the tool.
     * @return The HTMl mapping with the tool.
     */
    public String getHtmlMapping(String toolName);

    /**
     * This method returns all the tool-HTMl mappings.
     * @return a map containing tool name and HTML mapping.
     */
    public Map getHtmlMappings();
    
    /**
     * This method returns the text mapping associated with the tool.
     * @param toolName the name of the tool.
     * @return The text associated with the tool.
     */
    public String getTextMapping(String toolName);

    /**
     * This method returns all tool-Text mappings.
     * @return A map containing tool name and text mapping.
     */
    public Map getTextMappings();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy