@ -16,45 +16,21 @@
package org.thingsboard.server.controller ;
import com.fasterxml.jackson.databind.JsonNode ;
import com.nimbusds.jose.shaded.json.JSONObject ;
import io.swagger.annotations.ApiOperation ;
import lombok.RequiredArgsConstructor ;
import lombok.extern.slf4j.Slf4j ;
import org.apache.commons.io.FileUtils ;
import org.apache.commons.lang3.CharEncoding ;
import org.springframework.beans.factory.annotation.Value ;
import org.springframework.core.io.ClassPathResource ;
import org.springframework.http.HttpStatus ;
import org.springframework.security.access.prepost.PreAuthorize ;
import org.springframework.web.bind.annotation.RequestMapping ;
import org.springframework.web.bind.annotation.RequestMethod ;
import org.springframework.web.bind.annotation.ResponseBody ;
import org.springframework.web.bind.annotation.RestController ;
import org.thingsboard.common.util.JacksonUtil ;
import org.thingsboard.server.common.data.ResourceType ;
import org.thingsboard.server.common.data.TbResource ;
import org.thingsboard.server.common.data.exception.ThingsboardException ;
import org.thingsboard.server.common.data.id.TenantId ;
import org.thingsboard.server.dao.settings.AdminSettingsService ;
import org.thingsboard.server.queue.util.TbCoreComponent ;
import org.thingsboard.server.service.mail.TbMailConfigTemplateService ;
import org.thingsboard.server.service.security.permission.Operation ;
import org.thingsboard.server.service.security.permission.Resource ;
import com.fasterxml.jackson.databind.ObjectMapper ;
import org.springframework.core.io.ClassPathResource ;
import org.springframework.http.MediaType ;
import org.springframework.web.bind.annotation.GetMapping ;
import org.springframework.web.bind.annotation.ResponseBody ;
import org.springframework.web.bind.annotation.RestController ;
import java.io.File ;
import java.io.IOException ;
import java.io.InputStream ;
import java.nio.file.DirectoryStream ;
import java.nio.file.Files ;
import java.nio.file.Path ;
import java.nio.file.Paths ;
import java.util.Base64 ;
import static org.thingsboard.server.controller.ControllerConstants.SYSTEM_OR_TENANT_AUTHORITY_PARAGRAPH ;
@ -64,9 +40,7 @@ import static org.thingsboard.server.controller.ControllerConstants.SYSTEM_OR_TE
@RequestMapping ( "/api/mail/config/template" )
@Slf4j
public class MailConfigTemplateController extends BaseController {
private static final String MAIL_CONFIG_TEMPLATE_ID = "mailConfigTemplateId" ;
private static final String MAIL_CONFIG_TEMPLATE_DEFINITION = "Mail configuration template is set of default smtp settings for mail server that specific provider supports" ;
private final TbMailConfigTemplateService mailConfigTemplateService ;
@ApiOperation ( value = "Get the list of all OAuth2 client registration templates (getClientRegistrationTemplates)" + SYSTEM_OR_TENANT_AUTHORITY_PARAGRAPH ,