
com.adobe.aemds.guide.service.GuideThemeService Maven / Gradle / Ivy
/*
* **********************************************************************
* ADOBE CONFIDENTIAL
* __________________
*
* Copyright 2015 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 may be covered by U.S. and Foreign Patents,
* patents in process, 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.adobe.aemds.guide.service;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.commons.json.JSONObject;
import java.util.List;
/**
* The GuideThemeService interface declares the basic operations required for creating and updating themes.
*
* @pad.exclude Exclude from Published API.
*/
public interface GuideThemeService {
/**
* Update Theme Configuration values
*
* @param themeContentPath The repository path of theme asset till jcr:content node
* @param configJson the Json object containing the theme configuration information
* @return true if configuration was updated successfully, else false.
* @throws GuideException
*/
boolean updateThemeConfig(String themeContentPath,
JSONObject configJson) throws GuideException;
/**
* Update Theme Migration
*
* @param themeResource Theme Resource
* @return true if configuration was updated successfully, else false.
* @throws GuideException
*/
boolean migrateTheme(Resource themeResource) throws GuideException;
/**
* Generates a list of fonts that are available for the theme that is passed as parameter.
* Includes all web fonts that are configured for the theme and default fonts that are available
* across all themes.
*
* @param themeContentPath The path to jcr:content of theme
* @return String[] of all font list
*/
public List getFontList(String themeContentPath);
/**
* Function to get the combined embed code(script tag or link tag) of all web font services,
* which needs to be included in html code for using fonts from any web font service.
*
* @param themeContentPath The path to jcr:content of theme for which web fonts have been configured.
* @param formPath Path of form resource on which the theme is applied
* @return The code (script and link tags) to be included to in html for using all web font services.
*/
public String getEmbeddingCode(String themeContentPath, String formPath);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy