Internal Cascade API
Internal Cascade API Changelog
Cascade CMS 8.25
New methods added to existing Cascade API objects
- New
com.hannonhill.cascade.apl.asset.common.PermissionLevelenum added with valuesNONE,READandWRITE - New methods added to
com.hannonhill.cascade.apl.asset.home.PermissionsCapableAssetgetAllPermissionLevel()- returns thePermissionLevelapplied to all users that do not have an explicit ACL entrysetAllPermissionLevel(PermissionLevel)- updates thePermissionLevelfor the assetaddReadAccessUser(String)- adds an explicit READ permission for the given user nameaddWriteAccessUser(String)- adds an explicit WRITE permission for the given user nameaddReadAccessGroup(String)- adds an explicit READ permission for the given group nameaddWriteAccessGroup(String)- adds an explicit WRITE permission for the given group nameclearPermissions()- Clears explicit ACL entries and sets all permission level to NONE
- New methods added to
com.hannonhill.cascade.api.asset.common.StructuredDataNodefor consistency withDynamicMetadataField:getValue()getValues()hasValue(String)
Cascade CMS 8.22
New Query API Methods
- $_.query().byDataDefinition
- $_.query().bySiteName
- $_.query().byFolderPath
- $_.query().hasAnyPaths
- $_.query().hasStructuredData
- $_.query().hasAnyStructuredDataValues
- $_.query().hasStructuredDataByFieldId
- $_.query().hasAnyStructuredDataValuesByFieldId
- $_.query().preloadDynamicMetadata
- $_.query().preloadStructuredData
Cascade Cloud v20220802
New methods added to existing Cascade API objects
- New methods added to
com.hannonhill.cascade.api.asset.home.StructuredDataCapableAssetgetStructuredDataNodeWithFieldId()- returns the first foundStructuredDataNodethat matches givenfield-idgetStructuredDataNodesWithFieldId()- returns aList<StructuredDataNode>ofStructuredDataNodeobjects that match givenfield-id
- New methods added to
com.hannonhill.cascade.api.asset.common.StructuredDataNodegetChildWithFieldId()- returns the first found childStructuredDataNodethat matches givenfield-idgetChildrenWithFieldId()- returns aList<StructuredDataNode>of childStructuredDataNodeobjects that match givenfield-idgetDefinitionFieldId()- returns thefield-idfor theStructuredDataNode
Cascade CMS 8.16
New Cascade API Objects
com.hannonhill.cascade.api.asset.admin.ContentType- represents a Content Type asset- This object inherits all methods from
SiteManagementAreaAsset
- This object inherits all methods from
com.hannonhill.cascade.api.asset.admin.MetadataSet- represents a Metadata Set asset- This object inherits all methods from
SiteManagementAreaAsset
- This object inherits all methods from
com.hannonhill.cascade.api.asset.admin.StructuredDataDefinition- represents a Data Definition asset- This object inherits all methods from
SiteManagementAreaAsset
- This object inherits all methods from
com.hannonhill.cascade.api.asset.common.FieldItem- contains thelabelandvalueinformation of an individual item that can be selected for a given checkbox, radio, dropdown or multiselect Dynamic Metadata or Structured Data field. If no label is present, the value will be used as the field item's label.com.hannonhill.cascade.api.asset.common.ImageDimensions- contains the width and height (in pixels) for an image file
New methods added to existing Cascade API Objects
- New methods added to
com.hannonhill.cascade.api.asset.home.PagegetDataDefinition()- returnscom.hannonhill.cascade.api.asset.admin.StructuredDataDefinition, which is the Data Definition associated with the PagegetContentType()- returnscom.hannonhill.cascade.api.asset.admin.ContentType, which is the Content Type associated with the Page
- New method added to
com.hannonhill.cascade.api.asset.home.XHTMLDataDefinitionBlockgetDataDefinition()- returnscom.hannonhill.cascade.api.asset.admin.StructuredDataDefinition, which is the Data Definition associated with the Block
- New method added to
com.hannonhill.cascade.api.asset.home.MetadataAwareAssetgetMetadataSet()- returnscom.hannonhill.cascade.api.asset.admin.MetadataSet, which is the Metadata Set associated with the asset
- New method added to
com.hannonhill.cascade.api.asset.home.FilegetImageDimensions()- returnscom.hannonhill.cascade.api.asset.common.ImageDimensions, which are the dimentions of an image file, if present
DynamicMetadataField.getPossibleFieldItems()andStructuredDataNode.getPossibleFieldItems()returns aList<FieldItem>of all possible field items that can be selected for a given checkbox, radio, dropdown or multiselect field. An empty list will be returned for fields that do not support selecting field items.DynamicMetadataField.getSelectedFieldItems()andStructuredDataNode.getSelectedFieldItems()returns aList<FieldItem>of all selected field items for a given checkbox, radio, dropdown or multiselect field. An empty list will be returned for fields that do not support selecting field items.- Note: dropdowns that allow custom values will return a field item which uses the custom value as its
labelandvalue.
- Note: dropdowns that allow custom values will return a field item which uses the custom value as its
- Added
StructuredDataNode.getLabel()to access the label of a given Structured Data field.
New Locator Tool Methods
locateFormat(String path, String siteName)andlocateFormat(String path)- returns a Format at the given path and in the given site (optional).locateLinkable(String path, String siteName)andlocateLinkable(String path)- returns a Page, File, External Link, or Block at the given path and in the given site (optional).
Improvements
- When working with API objects, metadata and dynamic metadata fields will be cached after loading to improve rendering time during operations such as sorting on dynamic metadata values.
Cascade CMS 8.13
Fixed
- The
TextBlockAPIAdapter.getTextmethod will no longer return a wrapping<system-xml>element with the Block's text content.
Cascade CMS 8.12
Improvements
- Consecutive calls with
structuredData,getStructuredDataNode(), orgetStructuredDataNodes()will now be cached to improve rendering times.
Removed
StructuredDataNode.identifier.idwill no longer return anidforgroupelements.
Cascade CMS 8.11
New Cascade API Methods
DynamicMetadataField.hasValue(String)- checks if the given value is within the selected values.DynamicMetadataField.isDatetime()- returnstrueif the field is a date-time field.
Cascade CMS 8.9
New Cascade API methods:
FolderContainedAsset.getTags()- Returns a list of Strings that are tag names assigned to given asset.- Velocity example:
#set($pageTags = $page.tags).
- Velocity example:
Site.getAvailableTags()- Returns a list of Strings that are tags available in given site, which includes system level tags. The resulting list has unique values and #is sorted alphabetically.- Velocity example:
#set($allTags = $page.site.availableTags)
- Velocity example:
New Query API methods:
hasAnyTags(['tag1', 'tag2'])- Limits the search results to assets that have at least one of given tagshasTag('tag')- Same as callinghasAnyTags(['tag'])hasAnyMetadataValues(String fieldName, Collection<String> fieldValues)- Same as calling the existinghasMetadata(String fieldName, Collection<String> fieldValues), but the method name has been updated to be more clear about the method is doing (similar tohasAnyTags).- Deprecated:
hasMetadata(fieldName, values)
- Deprecated:
- The
toString()method for Query API with the information about tags - The hard max limit on Query API returned assets has been increased from 500 to 2,000 to help with use cases where 500 assets was not enough.
- A note about performance: tests have shown that fetching 2,000 assets takes ~2 times longer than fetching 400 assets.
Other Improvements
- The
FolderContainedAsset.getLinkingAssets()method will now return assets linked through Data Definition chooser fields
Cascade CMS 8.7
Site asset has 3 new methods:
getNamingRuleCase()getNamingRuleSpacing()getNamingRuleAssets()
These methods return effective naming rules inside of that site. This means that if the Site inherits naming rules, the system-wide naming rules will be returned.
Also, a new method transform() has been added to FilenameNormalizer that transforms given asset's name based on the naming rules inside of the asset's site.
systemName = utilityProvider.getFilenameNormalizer().transform(asset, systemName);
Cascade CMS 8.6
Improvements
- Added a new method
StructuredDataNode.hasTextValue(String)that checks if the given value is within the selected values.
Fixed
StructuredDataNode.getTextValues()no longer returns an extra empty value.
Cascade CMS 8.1.1
New methods exposed on objects
Asset now expose a label property $asset.label that returns Display Name, Title, or the asset's system name -- whichever is populated first. This is convenience method for quickly accessing this information.
8.0.2
New API objects
- New API object
com.hannonhill.cascade.api.asset.admin.Sitethat represents a Site asset
- This object inherits all methods from
PermissionsCapableAsset - In addition to these methods, it has
getUrl()method that returns String URL of the Site.
- This object inherits all methods from
- New class that API objects inherit from
com.hannonhill.cascade.api.asset.admin.SiteManagementAreaAsset- This class inherits from com.hannonhill.cascade.api.asset.common.PermissionsCapableAsset
- It contains method getSite() which returns
com.hannonhill.cascade.api.asset.admin.Site,which is a Site in which the asset is located.
- API objects that now inherit from
com.hannonhill.cascade.api.asset.admin.SiteManagementAreaAsset:com.hannonhill.cascade.api.asset.admin.DestinationContainercom.hannonhill.cascade.api.asset.admin.Transportcom.hannonhill.cascade.api.asset.admin.Destinationcom.hannonhill.cascade.api.asset.admin.AssetFactory
New methods in existing API objects
- New method in
com.hannonhill.cascade.webservice.schema.FolderContainedAssetgetSite()- returnscom.hannonhill.cascade.api.asset.admin.Site,which is a Site in which the asset is located.
- New method in
com.hannonhill.cascade.api.asset.common.BaseAssetgetAssetType()- returns a String that represents the type of the current asset, equivalent to callinggetIdentifer().getType().toString()
- New method in
com.hannonhill.cascade.api.asset.home.BlockgetBlockType()- returns a String that represents type of the block
- New method in
com.hannonhill.cascade.api.asset.home.FormatgetFormatType()- returns a String that represents type of the format
- New method in
com.hannonhill.cascade.api.asset.home.MetadataAwareAssetgetLinkingAssets()- returns a List ofcom.hannonhill.cascade.api.asset.home.FolderContainedAssetsthat contain links to this asset in their content through ', language: 'en', searchInputs: ['cludo-search-form', 'cludo-search-form-top'], hideSearchFilters: true, focusOnResultsAfterSearch: true, type: 'inline', template: 'InlineBasic', disableAutocomplete: true, }; CludoSearch = new Cludo(cludoSettings); CludoSearch.init(); })();