updateThemeForStack method
Updates custom branding that customizes the appearance of the streaming application catalog page.
May throw ConcurrentModificationException.
May throw InvalidAccountStatusException.
May throw InvalidParameterCombinationException.
May throw LimitExceededException.
May throw OperationNotPermittedException.
May throw ResourceNotFoundException.
Parameter stackName :
The name of the stack for the theme.
Parameter attributesToDelete :
The attributes to delete.
Parameter faviconS3Location :
The S3 location of the favicon. The favicon enables users to recognize
their application streaming site in a browser full of tabs or bookmarks.
It is displayed at the top of the browser tab for the application
streaming site during users' streaming sessions.
Parameter footerLinks :
The links that are displayed in the footer of the streaming application
catalog page. These links are helpful resources for users, such as the
organization's IT support and product marketing sites.
Parameter organizationLogoS3Location :
The organization logo that appears on the streaming application catalog
page.
Parameter state :
Specifies whether custom branding should be applied to catalog page or
not.
Parameter themeStyling :
The color theme that is applied to website links, text, and buttons. These
colors are also applied as accents in the background for the streaming
application catalog page.
Parameter titleText :
The title that is displayed at the top of the browser tab during users'
application streaming sessions.
Implementation
Future<UpdateThemeForStackResult> updateThemeForStack({
required String stackName,
List<ThemeAttribute>? attributesToDelete,
S3Location? faviconS3Location,
List<ThemeFooterLink>? footerLinks,
S3Location? organizationLogoS3Location,
ThemeState? state,
ThemeStyling? themeStyling,
String? titleText,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'PhotonAdminProxyService.UpdateThemeForStack'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'StackName': stackName,
if (attributesToDelete != null)
'AttributesToDelete': attributesToDelete.map((e) => e.value).toList(),
if (faviconS3Location != null) 'FaviconS3Location': faviconS3Location,
if (footerLinks != null) 'FooterLinks': footerLinks,
if (organizationLogoS3Location != null)
'OrganizationLogoS3Location': organizationLogoS3Location,
if (state != null) 'State': state.value,
if (themeStyling != null) 'ThemeStyling': themeStyling.value,
if (titleText != null) 'TitleText': titleText,
},
);
return UpdateThemeForStackResult.fromJson(jsonResponse.body);
}