@sitevision/api 1.0.19 → 1.1.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common/router/index.d.ts +1 -1
- package/hidden/javax/jcr/Binary/index.d.ts +86 -0
- package/hidden/javax/jcr/Credentials/index.d.ts +11 -0
- package/hidden/javax/jcr/ImportUUIDBehavior/index.d.ts +11 -0
- package/hidden/javax/jcr/Item/index.d.ts +353 -0
- package/hidden/javax/jcr/ItemVisitor/index.d.ts +41 -0
- package/hidden/javax/jcr/NamespaceRegistry/index.d.ts +100 -0
- package/hidden/javax/jcr/Node/index.d.ts +2808 -0
- package/hidden/javax/jcr/NodeIterator/index.d.ts +18 -0
- package/hidden/javax/jcr/Property/index.d.ts +801 -0
- package/hidden/javax/jcr/PropertyIterator/index.d.ts +17 -0
- package/hidden/javax/jcr/RangeIterator/index.d.ts +75 -0
- package/hidden/javax/jcr/Repository/index.d.ts +318 -0
- package/hidden/javax/jcr/RepositoryFactory/index.d.ts +90 -0
- package/hidden/javax/jcr/Value/index.d.ts +190 -0
- package/hidden/javax/jcr/ValueFactory/index.d.ts +179 -0
- package/hidden/javax/jcr/Workspace/index.d.ts +1061 -0
- package/hidden/javax/jcr/lock/Lock/index.d.ts +142 -0
- package/hidden/javax/jcr/lock/LockManager/index.d.ts +217 -0
- package/hidden/javax/jcr/nodetype/ItemDefinition/index.d.ts +219 -0
- package/hidden/javax/jcr/nodetype/NodeDefinition/index.d.ts +158 -0
- package/hidden/javax/jcr/nodetype/NodeDefinitionTemplate/index.d.ts +74 -0
- package/hidden/javax/jcr/nodetype/NodeType/index.d.ts +349 -0
- package/hidden/javax/jcr/nodetype/NodeTypeDefinition/index.d.ts +248 -0
- package/hidden/javax/jcr/nodetype/NodeTypeIterator/index.d.ts +16 -0
- package/hidden/javax/jcr/nodetype/NodeTypeManager/index.d.ts +218 -0
- package/hidden/javax/jcr/nodetype/NodeTypeTemplate/index.d.ts +98 -0
- package/hidden/javax/jcr/nodetype/PropertyDefinition/index.d.ts +536 -0
- package/hidden/javax/jcr/nodetype/PropertyDefinitionTemplate/index.d.ts +97 -0
- package/hidden/javax/jcr/observation/Event/index.d.ts +133 -0
- package/hidden/javax/jcr/observation/EventIterator/index.d.ts +20 -0
- package/hidden/javax/jcr/observation/EventJournal/index.d.ts +22 -0
- package/hidden/javax/jcr/observation/EventListener/index.d.ts +23 -0
- package/hidden/javax/jcr/observation/EventListenerIterator/index.d.ts +20 -0
- package/hidden/javax/jcr/observation/ObservationManager/index.d.ts +227 -0
- package/hidden/javax/jcr/query/Query/index.d.ts +201 -0
- package/hidden/javax/jcr/query/QueryManager/index.d.ts +73 -0
- package/hidden/javax/jcr/query/QueryResult/index.d.ts +51 -0
- package/hidden/javax/jcr/query/Row/index.d.ts +159 -0
- package/hidden/javax/jcr/query/RowIterator/index.d.ts +20 -0
- package/hidden/javax/jcr/query/qom/And/index.d.ts +26 -0
- package/hidden/javax/jcr/query/qom/BindVariableValue/index.d.ts +15 -0
- package/hidden/javax/jcr/query/qom/ChildNode/index.d.ts +27 -0
- package/hidden/javax/jcr/query/qom/ChildNodeJoinCondition/index.d.ts +27 -0
- package/hidden/javax/jcr/query/qom/Column/index.d.ts +39 -0
- package/hidden/javax/jcr/query/qom/Comparison/index.d.ts +82 -0
- package/hidden/javax/jcr/query/qom/Constraint/index.d.ts +13 -0
- package/hidden/javax/jcr/query/qom/DescendantNode/index.d.ts +31 -0
- package/hidden/javax/jcr/query/qom/DescendantNodeJoinCondition/index.d.ts +29 -0
- package/hidden/javax/jcr/query/qom/DynamicOperand/index.d.ts +9 -0
- package/hidden/javax/jcr/query/qom/EquiJoinCondition/index.d.ts +41 -0
- package/hidden/javax/jcr/query/qom/FullTextSearch/index.d.ts +89 -0
- package/hidden/javax/jcr/query/qom/FullTextSearchScore/index.d.ts +24 -0
- package/hidden/javax/jcr/query/qom/Join/index.d.ts +36 -0
- package/hidden/javax/jcr/query/qom/JoinCondition/index.d.ts +9 -0
- package/hidden/javax/jcr/query/qom/Length/index.d.ts +24 -0
- package/hidden/javax/jcr/query/qom/Literal/index.d.ts +18 -0
- package/hidden/javax/jcr/query/qom/LowerCase/index.d.ts +26 -0
- package/hidden/javax/jcr/query/qom/NodeLocalName/index.d.ts +16 -0
- package/hidden/javax/jcr/query/qom/NodeName/index.d.ts +16 -0
- package/hidden/javax/jcr/query/qom/Not/index.d.ts +20 -0
- package/hidden/javax/jcr/query/qom/Operand/index.d.ts +9 -0
- package/hidden/javax/jcr/query/qom/Or/index.d.ts +30 -0
- package/hidden/javax/jcr/query/qom/Ordering/index.d.ts +53 -0
- package/hidden/javax/jcr/query/qom/PropertyExistence/index.d.ts +24 -0
- package/hidden/javax/jcr/query/qom/PropertyValue/index.d.ts +25 -0
- package/hidden/javax/jcr/query/qom/QueryObjectModel/index.d.ts +64 -0
- package/hidden/javax/jcr/query/qom/QueryObjectModelConstants/index.d.ts +9 -0
- package/hidden/javax/jcr/query/qom/QueryObjectModelFactory/index.d.ts +638 -0
- package/hidden/javax/jcr/query/qom/SameNode/index.d.ts +27 -0
- package/hidden/javax/jcr/query/qom/SameNodeJoinCondition/index.d.ts +36 -0
- package/hidden/javax/jcr/query/qom/Selector/index.d.ts +35 -0
- package/hidden/javax/jcr/query/qom/Source/index.d.ts +9 -0
- package/hidden/javax/jcr/query/qom/StaticOperand/index.d.ts +10 -0
- package/hidden/javax/jcr/query/qom/UpperCase/index.d.ts +26 -0
- package/hidden/javax/jcr/retention/Hold/index.d.ts +34 -0
- package/hidden/javax/jcr/retention/RetentionManager/index.d.ts +189 -0
- package/hidden/javax/jcr/retention/RetentionPolicy/index.d.ts +21 -0
- package/hidden/javax/jcr/security/AccessControlEntry/index.d.ts +24 -0
- package/hidden/javax/jcr/security/AccessControlList/index.d.ts +91 -0
- package/hidden/javax/jcr/security/AccessControlManager/index.d.ts +297 -0
- package/hidden/javax/jcr/security/AccessControlPolicy/index.d.ts +11 -0
- package/hidden/javax/jcr/security/AccessControlPolicyIterator/index.d.ts +20 -0
- package/hidden/javax/jcr/security/NamedAccessControlPolicy/index.d.ts +22 -0
- package/hidden/javax/jcr/security/Privilege/index.d.ts +117 -0
- package/hidden/javax/jcr/version/Version/index.d.ts +121 -0
- package/hidden/javax/jcr/version/VersionHistory/index.d.ts +307 -0
- package/hidden/javax/jcr/version/VersionIterator/index.d.ts +20 -0
- package/hidden/javax/jcr/version/VersionManager/index.d.ts +1082 -0
- package/hidden/senselogic/sitevision/api/base/Builder/index.d.ts +102 -0
- package/hidden/senselogic/sitevision/api/base/Filter/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/base/FilterSplit/index.d.ts +50 -0
- package/hidden/senselogic/sitevision/api/base/Loadable/index.d.ts +15 -0
- package/hidden/senselogic/sitevision/api/base/Resolver/index.d.ts +31 -0
- package/hidden/senselogic/sitevision/api/base/Wrapper/index.d.ts +24 -0
- package/hidden/senselogic/sitevision/api/collaboration/CollaborationGroupWrapper/index.d.ts +417 -0
- package/hidden/senselogic/sitevision/api/format/NumericFormatter/index.d.ts +80 -0
- package/hidden/senselogic/sitevision/api/format/NumericFormatterBuilder/index.d.ts +100 -0
- package/hidden/senselogic/sitevision/api/i18n/Currency/index.d.ts +120 -0
- package/hidden/senselogic/sitevision/api/link/CustomLinkProcessor/index.d.ts +45 -0
- package/hidden/senselogic/sitevision/api/link/CustomLinkRenderData/index.d.ts +65 -0
- package/hidden/senselogic/sitevision/api/mail/Mail/index.d.ts +32 -0
- package/hidden/senselogic/sitevision/api/message/MessageTextLinker/index.d.ts +15 -0
- package/hidden/senselogic/sitevision/api/metadata/value/LinkValue/index.d.ts +23 -0
- package/hidden/senselogic/sitevision/api/metadata/value/RelatedValue/index.d.ts +23 -0
- package/hidden/senselogic/sitevision/api/property/VersionedPropertyUtil/index.d.ts +642 -0
- package/hidden/senselogic/sitevision/api/render/BuddyIconRenderer/BuddyIconInfo/index.d.ts +51 -0
- package/hidden/senselogic/sitevision/api/render/ImageScaler/index.d.ts +58 -0
- package/hidden/senselogic/sitevision/api/render/TextModuleRenderer/index.d.ts +301 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/ArticleUtilConstants/index.d.ts +85 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/ExceptionSuppressingProxyConstants/index.d.ts +31 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/IndexingUtilConstants/index.d.ts +31 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/LinkPageUtilConstants/index.d.ts +67 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/MathInstanceConstants/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/MimeTypeUtilConstants/index.d.ts +19 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/NodeTypeUtilConstants/index.d.ts +1243 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/OutputUtilConstants/index.d.ts +31 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/PageUtilConstants/index.d.ts +91 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/PortletContextUtilConstants/index.d.ts +27 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/PortletUtilConstants/index.d.ts +19 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/QueryStringUtilConstants/index.d.ts +19 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/SearchHitConstants/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/SearchResultConstants/index.d.ts +37 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/VersionUtilConstants/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityAccess/index.d.ts +8 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityContext/index.d.ts +50 -0
- package/hidden/senselogic/sitevision/api/render/velocity/VelocityEvaluator/index.d.ts +89 -0
- package/hidden/senselogic/sitevision/api/script/RequesterChainable/index.d.ts +119 -0
- package/hidden/senselogic/sitevision/api/script/app/RestAppInvoker/index.d.ts +272 -0
- package/hidden/senselogic/sitevision/api/script/factory/TypedArgument/index.d.ts +43 -0
- package/hidden/senselogic/sitevision/api/script/proxy/ExceptionSuppressingCollection/index.d.ts +94 -0
- package/hidden/senselogic/sitevision/api/script/proxy/ExceptionSuppressingIterator/index.d.ts +117 -0
- package/hidden/senselogic/sitevision/api/script/proxy/ExceptionSuppressingProxy/index.d.ts +90 -0
- package/hidden/senselogic/sitevision/api/search/SearchFieldUtil/index.d.ts +89 -0
- package/hidden/senselogic/sitevision/api/search/SearchHighlighter/index.d.ts +45 -0
- package/hidden/senselogic/sitevision/api/search/SearchHit/index.d.ts +1176 -0
- package/hidden/senselogic/sitevision/api/search/SearchResult/index.d.ts +414 -0
- package/hidden/senselogic/sitevision/api/search/facet/SearchFacetField/index.d.ts +27 -0
- package/hidden/senselogic/sitevision/api/search/facet/SearchFacetValue/index.d.ts +61 -0
- package/hidden/senselogic/sitevision/api/search/searcher/Searcher/index.d.ts +277 -0
- package/hidden/senselogic/sitevision/api/search/searcher/component/Filter/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/search/searcher/component/Highlight/index.d.ts +29 -0
- package/hidden/senselogic/sitevision/api/search/searcher/component/Monitor/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/search/searcher/component/Parser/index.d.ts +35 -0
- package/hidden/senselogic/sitevision/api/search/searcher/component/Sort/index.d.ts +25 -0
- package/hidden/senselogic/sitevision/api/search/searcher/component/SpellCheck/index.d.ts +29 -0
- package/hidden/senselogic/sitevision/api/search/sort/CustomSort/index.d.ts +82 -0
- package/hidden/senselogic/sitevision/api/search/suggestion/SearchSuggestion/index.d.ts +21 -0
- package/hidden/senselogic/sitevision/api/security/DirectoryAttributes/index.d.ts +70 -0
- package/hidden/senselogic/sitevision/api/security/MessageDigester/index.d.ts +50 -0
- package/hidden/senselogic/sitevision/api/security/RoleAssignment/index.d.ts +72 -0
- package/hidden/senselogic/sitevision/api/security/RoleMatcher/index.d.ts +29 -0
- package/hidden/senselogic/sitevision/api/security/SecretStore/index.d.ts +55 -0
- package/hidden/senselogic/sitevision/api/security/UserUtil/index.d.ts +80 -0
- package/hidden/senselogic/sitevision/api/security/jaas/filter/AuthenticationFilter/index.d.ts +36 -0
- package/hidden/senselogic/sitevision/api/security/jaas/filter/AuthenticationFilterChain/index.d.ts +32 -0
- package/hidden/senselogic/sitevision/api/user/UserIdentityWrapper/index.d.ts +599 -0
- package/hidden/senselogic/sitevision/api/webresource/LinkTarget/index.d.ts +20 -0
- package/hidden/senselogic/sitevision/api/xml/XmlElement/index.d.ts +55 -0
- package/hidden/senselogic/sitevision/api/xml/XmlElementHandler/index.d.ts +17 -0
- package/package.json +2 -4
- package/server/AliasUtil/index.d.ts +25 -0
- package/server/AliasUtil/index.js +10 -0
- package/server/ArchiveUtil/index.d.ts +65 -11
- package/server/ArraysInstance/index.d.ts +1846 -0
- package/server/ArticleUtil/index.d.ts +381 -69
- package/server/AuthenticationUtil/index.d.ts +106 -0
- package/server/BookmarkUtil/index.d.ts +36 -28
- package/server/BuddyIconRenderer/index.d.ts +240 -0
- package/server/ClientUtil/index.d.ts +18 -4
- package/server/CollaborationFactory/index.d.ts +42 -25
- package/server/CollaborationGroupFolderUtil/index.d.ts +40 -29
- package/server/CollaborationGroupTemplateUtil/index.d.ts +71 -39
- package/server/CollaborationGroupUtil/index.d.ts +128 -55
- package/server/CollectionsInstance/index.d.ts +738 -0
- package/server/ColorUtil/index.d.ts +22 -17
- package/server/CompoundAndFilterBuilder/index.d.ts +60 -0
- package/server/CompoundComparatorBuilder/index.d.ts +63 -0
- package/server/CompoundOrFilterBuilder/index.d.ts +59 -0
- package/server/ContentNodeUtil/index.d.ts +76 -0
- package/server/CurrencyFactory/index.d.ts +135 -0
- package/server/DateUtil/index.d.ts +154 -77
- package/server/DecorationUtil/index.d.ts +23 -0
- package/server/DeviceUtil/index.d.ts +36 -0
- package/server/DirectoryUtil/index.d.ts +107 -47
- package/server/DocTypeUtil/index.d.ts +149 -0
- package/server/EndecUtil/index.d.ts +537 -91
- package/server/ExtendedDismaxParserBuilder/index.d.ts +311 -0
- package/server/FileIconRenderer/index.d.ts +346 -0
- package/server/FileUtil/index.d.ts +462 -0
- package/server/FilterBuilder/index.d.ts +120 -0
- package/server/FolderUtil/index.d.ts +161 -0
- package/server/FontUtil/index.d.ts +49 -0
- package/server/FormatterBuilderFactory/index.d.ts +129 -0
- package/server/HighlightBuilder/index.d.ts +194 -0
- package/server/IconUtil/index.d.ts +37 -0
- package/server/ImageLinkRenderer/index.d.ts +134 -0
- package/server/ImageRenderer/index.d.ts +613 -231
- package/server/ImageUtil/index.d.ts +430 -0
- package/server/IndexUtil/index.d.ts +71 -0
- package/server/IndexingUtil/index.d.ts +92 -0
- package/server/InstanceCreatorUtil/index.d.ts +661 -0
- package/server/InstanceTypeUtil/index.d.ts +202 -0
- package/server/JwtUtil/index.d.ts +217 -0
- package/server/LandingPageUtil/index.d.ts +67 -50
- package/server/LinkPageUtil/index.d.ts +468 -0
- package/server/LinkRenderer/index.d.ts +1157 -0
- package/server/LinkTargetBuilder/index.d.ts +146 -0
- package/server/LinkValueBuilder/index.d.ts +129 -52
- package/server/ListWrapper/index.d.ts +172 -0
- package/server/LocaleUtil/index.d.ts +695 -61
- package/server/LogUtil/index.d.ts +118 -77
- package/server/MailBuilder/index.d.ts +238 -0
- package/server/MailUtil/index.d.ts +98 -0
- package/server/MathInstance/index.d.ts +681 -0
- package/server/MessageDigesterFactory/index.d.ts +49 -0
- package/server/MetadataDefinitionUtil/index.d.ts +118 -0
- package/server/MetadataUtil/index.d.ts +524 -79
- package/server/MimeTypeUtil/index.d.ts +316 -0
- package/server/MonitorBuilder/index.d.ts +51 -0
- package/server/NodeComparatorUtil/index.d.ts +397 -0
- package/server/NodeFactoryUtil/index.d.ts +32 -0
- package/server/NodeFilterUtil/index.d.ts +924 -0
- package/server/NodeIteratorUtil/index.d.ts +322 -72
- package/server/NodeResolverUtil/index.d.ts +767 -0
- package/server/NodeTreeUtil/index.d.ts +339 -63
- package/server/NodeTypeUtil/index.d.ts +391 -197
- package/server/OfflineVersionPropertyUtil/index.d.ts +30 -0
- package/server/OnlineVersionPropertyUtil/index.d.ts +30 -0
- package/server/OutputUtil/index.d.ts +641 -0
- package/server/PageUtil/index.d.ts +330 -0
- package/server/PermissionUtil/index.d.ts +650 -0
- package/server/PortletContextUtil/index.d.ts +118 -37
- package/server/PortletContextUtil/index.js +1 -0
- package/server/PortletUtil/index.d.ts +40 -0
- package/server/PrincipalUtil/index.d.ts +51 -0
- package/server/Properties/index.d.ts +185 -38
- package/server/PropertyUtil/index.d.ts +2330 -406
- package/server/PublishingUtil/index.d.ts +385 -49
- package/server/QueryStringUtil/index.d.ts +737 -0
- package/server/RedirectUtil/index.d.ts +98 -0
- package/server/RelatedValueBuilder/index.d.ts +81 -39
- package/server/Requester/index.d.ts +441 -65
- package/server/ResourceLocatorUtil/index.d.ts +483 -227
- package/server/RestApi/index.d.ts +208 -23
- package/server/RestAppInvokerFactory/index.d.ts +73 -0
- package/server/RoleAssignmentBuilder/index.d.ts +60 -0
- package/server/RoleMatcherBuilder/index.d.ts +59 -0
- package/server/RoleUtil/index.d.ts +57 -0
- package/server/ScriptUtil/index.d.ts +625 -143
- package/server/SearchFactory/index.d.ts +133 -0
- package/server/SearchUtil/index.d.ts +164 -0
- package/server/SearcherBuilder/index.d.ts +260 -0
- package/server/Session/index.d.ts +1758 -0
- package/server/SimpleUserUtil/index.d.ts +39 -30
- package/server/SiteCookieUtil/index.d.ts +78 -53
- package/server/SortBuilder/index.d.ts +111 -0
- package/server/SpellCheckBuilder/index.d.ts +68 -0
- package/server/StandardParserBuilder/index.d.ts +112 -0
- package/server/StructureUtil/index.d.ts +167 -0
- package/server/SubscriberUtil/index.d.ts +122 -0
- package/server/SubscriptionUtil/index.d.ts +197 -0
- package/server/SystemUserUtil/index.d.ts +201 -98
- package/server/TagUtil/index.d.ts +193 -0
- package/server/TemplateUtil/index.d.ts +217 -0
- package/server/TemporaryFileNodeBuilder/index.d.ts +63 -0
- package/server/TemporaryNodeBuilder/index.d.ts +241 -0
- package/server/TextModuleRendererBuilder/index.d.ts +68 -0
- package/server/TimestampUtil/index.d.ts +98 -82
- package/server/TranslationUtil/index.d.ts +175 -0
- package/server/TrashcanUtil/index.d.ts +193 -24
- package/server/UserDataUtil/index.d.ts +167 -85
- package/server/UserFactory/index.d.ts +45 -30
- package/server/UserFieldRenderer/index.d.ts +258 -0
- package/server/UserIdentityUtil/index.d.ts +61 -29
- package/server/UserUtil/index.d.ts +69 -28
- package/server/Utils/index.d.ts +870 -12
- package/server/VelocityRenderer/index.d.ts +248 -0
- package/server/VersionUtil/index.d.ts +15 -12
- package/server/WebContentUtil/index.d.ts +644 -0
- package/server/WebResourceFactory/index.d.ts +66 -0
- package/server/XSLTUtil/index.d.ts +49 -10
- package/server/XmlParserUtil/index.d.ts +82 -81
- package/builtins/Binary/index.d.ts +0 -3
- package/builtins/Calendar/index.d.ts +0 -3
- package/builtins/Collection/index.d.ts +0 -3
- package/builtins/Date/index.d.ts +0 -3
- package/builtins/InputStream/index.d.ts +0 -3
- package/builtins/Instant/index.d.ts +0 -3
- package/builtins/List/index.d.ts +0 -3
- package/builtins/LocalDateTime/index.d.ts +0 -3
- package/builtins/Locale/index.d.ts +0 -3
- package/builtins/Node/index.d.ts +0 -3
- package/builtins/NodeIterator/index.d.ts +0 -27
- package/builtins/Property/index.d.ts +0 -3
- package/builtins/Serializable/index.d.ts +0 -3
- package/builtins/Set/index.d.ts +0 -3
- package/builtins/Throwable/index.d.ts +0 -3
- package/builtins/byte/index.d.ts +0 -3
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the base interface for all builders in the Sitevision Utility API.
|
|
3
|
+
*
|
|
4
|
+
* <p>
|
|
5
|
+
* A <code>Builder</code> is used to set up the state necessary to build an instance of a specific type.
|
|
6
|
+
* </p>
|
|
7
|
+
* <p>
|
|
8
|
+
* A <code>Builder</code> has zero or more <strong>optional attributes</strong> and zero or more <strong>mandatory attributes</strong>.
|
|
9
|
+
* The builder will typically throw an <code>IllegalStateException</code> if a <em>mandatory</em> attribute hasn't been
|
|
10
|
+
* set when the <code>build()</code> method is invoked.
|
|
11
|
+
* </p>
|
|
12
|
+
* <p>
|
|
13
|
+
* A <code>Builder</code> is <strong>not thread safe</strong>, but the it <strong>can be re-used</strong> by the same thread to build multiple
|
|
14
|
+
* instances.
|
|
15
|
+
* </p>
|
|
16
|
+
* <p>
|
|
17
|
+
* Using a <code>Builder</code> is pretty straightforward, if you remember that it is <strong>stateful</strong>. Conceptually you
|
|
18
|
+
* would typically use it like this:
|
|
19
|
+
* </p>
|
|
20
|
+
* <ol>
|
|
21
|
+
* <li>Get the Builder</li>
|
|
22
|
+
* <li>Set/add all mandatory attributes</li>
|
|
23
|
+
* <li>Potentially set/add optional attributes</li>
|
|
24
|
+
* <li>Do build</li>
|
|
25
|
+
* </ol>
|
|
26
|
+
* <p>
|
|
27
|
+
* When you have built an instance, you can re-use the builder to build more instances. Typically like:
|
|
28
|
+
* </p>
|
|
29
|
+
* <ol>
|
|
30
|
+
* <li>(Re-)set one or more attributes</li>
|
|
31
|
+
* <li>Do build</li>
|
|
32
|
+
* </ol>
|
|
33
|
+
*
|
|
34
|
+
* <p>
|
|
35
|
+
* All methods (except the <code><em>build()</em></code> method) of a <code>Builder</code> will typically
|
|
36
|
+
* <strong>return the builder itself</strong>.
|
|
37
|
+
* This makes it easy to "chain" all method invocations, i.e. do all setup on a single line of code.
|
|
38
|
+
* </p>
|
|
39
|
+
* <h3>An example of how to work with a Builder!</h3>
|
|
40
|
+
* <p>
|
|
41
|
+
* In <strong>Java</strong>, you would typically use the {@link senselogic.sitevision.api.mail.MailBuilder} like this:
|
|
42
|
+
* </p><pre><code> MailBuilder mailBuilder = siteVisionUtils.getMailUtil().getMailBuilder();
|
|
43
|
+
*
|
|
44
|
+
* <em>// Create a mail</em>
|
|
45
|
+
* Mail mail = mailBuilder.setSubject("Hello")
|
|
46
|
+
* .setTextMessage("How are you Magnus?")
|
|
47
|
+
* .addRecipient("magnus.lovgren@sitevision.se")
|
|
48
|
+
* .build();</code></pre>
|
|
49
|
+
* <p>
|
|
50
|
+
* The code would typically look similar when using server-side <strong>JavaScript</strong>:
|
|
51
|
+
* </p><pre><code> var mailBuilder = require('MailBuilder');
|
|
52
|
+
*
|
|
53
|
+
* <em>// Create a mail</em>
|
|
54
|
+
* var mail = mailBuilder.setSubject('Hello')
|
|
55
|
+
* .setTextMessage('How are you Magnus?')
|
|
56
|
+
* .addRecipient('magnus.lovgren@sitevision.se')
|
|
57
|
+
* .build();</code></pre>
|
|
58
|
+
* <p>
|
|
59
|
+
* To use the same multi-line approach in <strong>Velocity</strong>, you would actually have to write it like this:
|
|
60
|
+
* </p><pre><code> #set ($mailBuilder = $sitevisionUtils.mailUtil.mailBuilder)
|
|
61
|
+
*
|
|
62
|
+
* <em>## Create a mail</em>
|
|
63
|
+
* #set ($mail = $mailBuilder.setSubject('Hello'
|
|
64
|
+
* ).setTextMessage('How are you Magnus?'
|
|
65
|
+
* ).addRecipient('magnus.lovgren@sitevision.se'
|
|
66
|
+
* ).build())</code></pre>
|
|
67
|
+
* <p>
|
|
68
|
+
* As exemplified above, working with a builder in Velocity has some caveats since the Velocity parser doesn't allow whitespace
|
|
69
|
+
* before the dot <em>(i.e. you must put the method closing parenthesis and the dot tight together)</em>. If you are uncomfortable handling
|
|
70
|
+
* multi-line nested method invocations in Velocity as above, you could instead:
|
|
71
|
+
* </p>
|
|
72
|
+
* <ul>
|
|
73
|
+
* <li>
|
|
74
|
+
* Put all nested invocations on one line:<pre><code>
|
|
75
|
+
* <em>## Create a mail</em>
|
|
76
|
+
* #set ($mail = $mailBuilder.setSubject('Hello').setTextMessage('How are you Magnus?').addRecipient('magnus.lovgren@sitevision.se').build())
|
|
77
|
+
* </code></pre>
|
|
78
|
+
* </li>
|
|
79
|
+
* <li>
|
|
80
|
+
* Use the {@link senselogic.sitevision.api.script.ScriptUtil#swallow(Object)} method to prohibit unwanted output:<pre><code>
|
|
81
|
+
* <em>## Get script util</em>
|
|
82
|
+
* #set ($scriptUtil = $sitevisionUtils.scriptUtil)
|
|
83
|
+
* ...
|
|
84
|
+
* <em>## Create a mail</em>
|
|
85
|
+
* $scriptUtil.swallow($mailBuilder.setSubject('Hello'))
|
|
86
|
+
* $scriptUtil.swallow($mailBuilder.setTextMessage('How are you Magnus?'))
|
|
87
|
+
* $scriptUtil.swallow($mailBuilder.addRecipient('magnus.lovgren@sitevision.se'))
|
|
88
|
+
* #set ($mail = $mailBuilder.build())</code></pre>
|
|
89
|
+
* </li>
|
|
90
|
+
* </ul>Creates an instance of type <em>T</em> using current state of this builder.
|
|
91
|
+
* @author Magnus Lövgren
|
|
92
|
+
* @since Sitevision 3.6
|
|
93
|
+
*/
|
|
94
|
+
interface Builder {
|
|
95
|
+
/**
|
|
96
|
+
* Creates an instance of type <em>T</em> using current state of this builder.
|
|
97
|
+
* @return an instance of type <em>T</em>
|
|
98
|
+
*/
|
|
99
|
+
build(): unknown;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
export default Builder;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the base interface for all filters in the Sitevision Utility API.
|
|
3
|
+
*
|
|
4
|
+
* <p>
|
|
5
|
+
* A <em>filter</em> is used to determine if an object matches a certain criteria or not.
|
|
6
|
+
* Typically a filter is applied to a <code>Collection</code> or a <code>Iterator</code>
|
|
7
|
+
* to extract all "relevant/matching" objects.
|
|
8
|
+
* </p>
|
|
9
|
+
* <p>
|
|
10
|
+
* See {@link senselogic.sitevision.api.node.NodeFilterUtil} for predefined node filters (i.e. <code>Filter<Node></code>).
|
|
11
|
+
* </p>Whether a given object matches the filter requirements or not.
|
|
12
|
+
* @author Magnus Lövgren
|
|
13
|
+
* @since Sitevision 3.6.2
|
|
14
|
+
* @see senselogic.sitevision.api.node.NodeFilterUtil
|
|
15
|
+
*/
|
|
16
|
+
interface Filter {
|
|
17
|
+
/**
|
|
18
|
+
* Whether a given object matches the filter requirements or not.
|
|
19
|
+
* @param anObject the object to check
|
|
20
|
+
* @return <code>true</code> if <code>anObject</code> is accepted by this filter, <code>false</code> otherwise
|
|
21
|
+
*/
|
|
22
|
+
accept(anObject: unknown): boolean;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export default Filter;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import Filter from "../Filter";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* This is the base interface for all filter splits in the Sitevision Utility API.
|
|
5
|
+
*
|
|
6
|
+
* <p>
|
|
7
|
+
* A <em>filter split</em> is the result of a filtering operation on a <code>Collection</code> or an <code>Iterator</code>.
|
|
8
|
+
* When a filter is applied to a number of items, some of them will potentially be <em>accepted</em> by the filter and some
|
|
9
|
+
* of them will be <em>rejected</em> by the filter. This interface depicts the result of such filtering operation.
|
|
10
|
+
* </p>
|
|
11
|
+
*
|
|
12
|
+
* <p>
|
|
13
|
+
* <em>Tip!</em> When working with a <code>Filter<Node></code>, you would typically use
|
|
14
|
+
* {@link senselogic.sitevision.api.node.NodeIteratorUtil#split(javax.jcr.NodeIterator, Filter)}
|
|
15
|
+
* to split on an iterator and
|
|
16
|
+
* {@link senselogic.sitevision.api.node.NodeFilterUtil#split(java.util.Collection, Filter)}
|
|
17
|
+
* to split on a collection.
|
|
18
|
+
* </p>Gets the list of items that was accepted by the filter.
|
|
19
|
+
*
|
|
20
|
+
* <p>
|
|
21
|
+
* <em>Note! The accepted list will always be empty if the filter used for the filtering operation is null</em>
|
|
22
|
+
* </p>Gets the list of items that was rejected by the filter.Gets the filter used for the filtering operation.
|
|
23
|
+
* @author Magnus Lövgren
|
|
24
|
+
* @since Sitevision 3.6.3
|
|
25
|
+
*/
|
|
26
|
+
interface FilterSplit {
|
|
27
|
+
/**
|
|
28
|
+
* Gets the list of items that was accepted by the filter.
|
|
29
|
+
*
|
|
30
|
+
* <p>
|
|
31
|
+
* <em>Note! The accepted list will always be empty if the filter used for the filtering operation is null</em>
|
|
32
|
+
* </p>
|
|
33
|
+
* @return the list of accepted items, never <code>null</code>
|
|
34
|
+
*/
|
|
35
|
+
getAccepted(): unknown[];
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Gets the list of items that was rejected by the filter.
|
|
39
|
+
* @return the list of rejected items, never <code>null</code>
|
|
40
|
+
*/
|
|
41
|
+
getRejected(): unknown[];
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Gets the filter used for the filtering operation.
|
|
45
|
+
* @return the filter used
|
|
46
|
+
*/
|
|
47
|
+
getFilter(): Filter;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export default FilterSplit;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A functional interface for loading resources.Loads a resource that is identified with a specific name.
|
|
3
|
+
* @author Magnus Lövgren
|
|
4
|
+
* @since Sitevision 4.0
|
|
5
|
+
*/
|
|
6
|
+
interface Loadable {
|
|
7
|
+
/**
|
|
8
|
+
* Loads a resource that is identified with a specific name.
|
|
9
|
+
* @param aName the name of the resource
|
|
10
|
+
* @return the resource, or <code>null</code> if no resource match <code>aName</code>
|
|
11
|
+
*/
|
|
12
|
+
load(aName: string): unknown;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export default Loadable;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the base interface for all resolvers in the Sitevision Utility API.
|
|
3
|
+
*
|
|
4
|
+
* <p>
|
|
5
|
+
* A <em>resolver</em> operates on an object and extracts/transforms/calculates a value of different type.
|
|
6
|
+
* </p>
|
|
7
|
+
* <p>
|
|
8
|
+
* <em>
|
|
9
|
+
* Note! This functional interface is conceptually equivalent (though the method names differ) with the
|
|
10
|
+
* <code>java.util.function.Function</code> interface that was introduced in Java 8.
|
|
11
|
+
* </em>
|
|
12
|
+
* </p>
|
|
13
|
+
* <p>
|
|
14
|
+
* See {@link senselogic.sitevision.api.node.NodeResolverUtil} for predefined resolvers that operates on nodes
|
|
15
|
+
* (i.e. <code>Resolver<Node,?></code>).
|
|
16
|
+
* </p>Resolves a value from an object.
|
|
17
|
+
* @param <T> type of object to operate on
|
|
18
|
+
* @param <V> type of value to produce
|
|
19
|
+
* @author Magnus Lövgren
|
|
20
|
+
* @since Sitevision 4.1
|
|
21
|
+
*/
|
|
22
|
+
interface Resolver {
|
|
23
|
+
/**
|
|
24
|
+
* Resolves a value from an object.
|
|
25
|
+
* @param aObject the object to operate on
|
|
26
|
+
* @return the resolved value
|
|
27
|
+
*/
|
|
28
|
+
resolve(aObject: unknown): unknown;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export default Resolver;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the base interface for all wrappers in the Sitevision Utility API.
|
|
3
|
+
*
|
|
4
|
+
* <p>
|
|
5
|
+
* A <em>Wrapper</em> "wraps" and "encapsulates" the functionality of another class or interface in order to make it easier to use
|
|
6
|
+
* and potentially provide different behaviour than the wrapped object can provide. In general a wrapper is going to expand on what
|
|
7
|
+
* the wrapped object does.
|
|
8
|
+
* </p>
|
|
9
|
+
* <p>
|
|
10
|
+
* All invocations for the wrapper will be delegated to the wrapped object, or executed with the wrapped object as subject/context
|
|
11
|
+
* when performing the invocation.
|
|
12
|
+
* </p>Gets the wrapped object.
|
|
13
|
+
* @author Magnus Lövgren
|
|
14
|
+
* @since Sitevision 3.6
|
|
15
|
+
*/
|
|
16
|
+
interface Wrapper {
|
|
17
|
+
/**
|
|
18
|
+
* Gets the wrapped object.
|
|
19
|
+
* @return the wrapped object, i.e. the instance that was used when this wrapper was created
|
|
20
|
+
*/
|
|
21
|
+
unwrap(): unknown;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export default Wrapper;
|
|
@@ -0,0 +1,417 @@
|
|
|
1
|
+
import Node from "../../../../../javax/jcr/Node";
|
|
2
|
+
import CollaborationGroupType from "../../../../../../server/CollaborationGroupType";
|
|
3
|
+
import CollaborationGroupState from "../../../../../../server/CollaborationGroupState";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Collaboration group administration interface.
|
|
7
|
+
*
|
|
8
|
+
* <p>
|
|
9
|
+
* This wrapper provides methods to update an existing collaboration group. You would typically use
|
|
10
|
+
* {@link CollaborationGroupUtil} to <em>create</em> a new collaboration group.
|
|
11
|
+
* </p>
|
|
12
|
+
*
|
|
13
|
+
* <p>
|
|
14
|
+
* An instance of the Sitevision class implementing this interface can be obtained via
|
|
15
|
+
* {@link CollaborationFactory#getCollaborationGroupWrapper(javax.jcr.Node)}.
|
|
16
|
+
* See {@link CollaborationFactory} for how to obtain an instance of the <code>CollaborationFactory</code> interface.
|
|
17
|
+
* </p>Gets the admins of the wrapped collaboration group.Checks if a user identity is admin of the wrapped collaboration group.Adds a user identity as admin of the wrapped collaboration group.
|
|
18
|
+
*
|
|
19
|
+
* <p>
|
|
20
|
+
* <em>Only non-admins will be added</em>, i.e. a user identity that already is an admin will be ignored.
|
|
21
|
+
* Collaboration groups that are <em>inactive/unavailable</em> don't accept any new admins.
|
|
22
|
+
* </p>
|
|
23
|
+
*
|
|
24
|
+
* <p>
|
|
25
|
+
* <strong>Permission note!</strong> To add an admin to the wrapped group, current user must have
|
|
26
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP} on the group.
|
|
27
|
+
* </p>Gets the members of the wrapped collaboration group.
|
|
28
|
+
*
|
|
29
|
+
* <p>
|
|
30
|
+
* <em>Note!</em> Admins are also considered as members.
|
|
31
|
+
* </p>Checks if a user identity is member of the wrapped collaboration group.Adds a user identity as member of the wrapped collaboration group.
|
|
32
|
+
*
|
|
33
|
+
* <p>
|
|
34
|
+
* <em>Only non-members will be added</em>, i.e. a user identity that already is a member will be ignored.
|
|
35
|
+
* Collaboration groups that are <em>inactive</em> doesn't accept any new members.
|
|
36
|
+
* </p>
|
|
37
|
+
*
|
|
38
|
+
* <p>
|
|
39
|
+
* <strong>Permission note!</strong> To add a member to the wrapped group, current user must have
|
|
40
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP} on the group -
|
|
41
|
+
* or current user must match the given user identity (i.e. "is yourself") and have
|
|
42
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#READ} on the wrapped group.
|
|
43
|
+
* </p>Removes a member from the wrapped collaboration group.
|
|
44
|
+
*
|
|
45
|
+
* <p>
|
|
46
|
+
* <em>Only members can be removed</em>, i.e. a user identity that is a non-member will be ignored. Note that an <em>admin</em>
|
|
47
|
+
* is also a <em>member</em> so removing a member might in fact also remove an <em>admin</em>, but <em>last admin</em> will never be removed.
|
|
48
|
+
* Members can not be removed from collaboration groups that are <em>inactive</em>.
|
|
49
|
+
* </p>
|
|
50
|
+
*
|
|
51
|
+
* <p>
|
|
52
|
+
* <strong>Permission note!</strong> To remove group membership for a user identity, current user
|
|
53
|
+
* must match the user identity (i.e. "is yourself") - or have
|
|
54
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
55
|
+
* and {@link senselogic.sitevision.api.security.PermissionUtil.Permission#READ} on the wrapped group.
|
|
56
|
+
* </p>Gets the followers/eavesdroppers of the wrapped collaboration group.Checks if a user identity is a follower/eavesdropper of the wrapped collaboration group.Alters the name of the wrapped collaboration group.
|
|
57
|
+
*
|
|
58
|
+
* <p>
|
|
59
|
+
* <strong>Permission note!</strong> Current user must have
|
|
60
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
61
|
+
* on the wrapped collaboration group.
|
|
62
|
+
* </p>
|
|
63
|
+
*
|
|
64
|
+
* <p>
|
|
65
|
+
* <em>Name note!</em> Each group name must be (case-insensitively) unique in a given structure (i.e. collaboration group folder).
|
|
66
|
+
* This method will remove leading and trailing whitespace from <code>aGroupName</code> and use the remaining characters
|
|
67
|
+
* as new name. The wrapped group will <em>not</em> be renamed if <code>aGroupName</code> is <code>null</code>, whitespace only or if
|
|
68
|
+
* the remaining characters already exist as group name.
|
|
69
|
+
* </p>
|
|
70
|
+
*
|
|
71
|
+
* <p>
|
|
72
|
+
* <em>Tip!</em> Use {@link CollaborationGroupFolderUtil#containsCollaborationGroup(javax.jcr.Node, String)}
|
|
73
|
+
* to check if a named collaboration group already exists in the collaboration group folder of the group.
|
|
74
|
+
* </p>Gets the collaboration group type of the wrapped collaboration group.Changes the collaboration group type of the wrapped collaboration group.
|
|
75
|
+
*
|
|
76
|
+
* <p>
|
|
77
|
+
* The group type can not be changed for collaboration groups that are <em>inactive</em>.
|
|
78
|
+
* </p>
|
|
79
|
+
*
|
|
80
|
+
* <p>
|
|
81
|
+
* <strong>Permission note!</strong> Current user must have
|
|
82
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
83
|
+
* on the wrapped collaboration group in order to change group type. In order to change group type to
|
|
84
|
+
* {@link CollaborationGroupType#CLOSED},
|
|
85
|
+
* current user must also have {@link senselogic.sitevision.api.security.PermissionUtil.Permission#CREATE_CLOSED_COLLABORATION_GROUP}
|
|
86
|
+
* on the wrapped collaboration group.
|
|
87
|
+
* </p>Gets the collaboration group state of the wrapped collaboration group.Changes the collaboration group state of the wrapped collaboration group.
|
|
88
|
+
*
|
|
89
|
+
* <p>
|
|
90
|
+
* <strong>Permission note!</strong> Current user must have
|
|
91
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
92
|
+
* on the wrapped collaboration group in order to change group state.
|
|
93
|
+
* </p>Gets the group description of the wrapped collaboration group.Sets the group description of the wrapped collaboration group.
|
|
94
|
+
*
|
|
95
|
+
* <p>
|
|
96
|
+
* <strong>Permission note!</strong> Current user must have
|
|
97
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
98
|
+
* on the wrapped collaboration group in order to change group description.
|
|
99
|
+
* </p>Gets the profile images folder of the wrapped collaboration group.Gets the profile image of the wrapped collaboration group.
|
|
100
|
+
*
|
|
101
|
+
* <p>
|
|
102
|
+
* <em>Note!</em> This method returns the 'raw' profile image (i.e. a Node of type <code>sv:image</code>)
|
|
103
|
+
* that the group has uploaded. For buddy icons, see {@link senselogic.sitevision.api.render.BuddyIconRenderer}.
|
|
104
|
+
* </p>Sets the profile image of the wrapped collaboration group.
|
|
105
|
+
*
|
|
106
|
+
* <p>
|
|
107
|
+
* This method <em>sets</em> the active profile image, i.e. determines which profile image that should be used.
|
|
108
|
+
* To <em>create a new</em> profile image (i.e. new binary data), you would typically use
|
|
109
|
+
* a method in {@link senselogic.sitevision.api.webresource.ImageUtil} first.
|
|
110
|
+
* </p>
|
|
111
|
+
*
|
|
112
|
+
* <p>
|
|
113
|
+
* <strong>Model note!</strong> A profile image must be a Node of type <code>sv:image</code>
|
|
114
|
+
* and a child of the <em>profile images folder</em> of the wrapped collaboration group.
|
|
115
|
+
* The profile images folder is available via {@link #getProfileImagesFolder()}.
|
|
116
|
+
* </p>
|
|
117
|
+
*
|
|
118
|
+
* <p>
|
|
119
|
+
* <strong>Permission note!</strong> Current user must have
|
|
120
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
121
|
+
* on the wrapped collaboration group in order to set the profile image.
|
|
122
|
+
* </p>Alters the render Locale used by the wrapped collaboration group.
|
|
123
|
+
*
|
|
124
|
+
* <p>
|
|
125
|
+
* <strong>Permission note!</strong> Current user must have
|
|
126
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
127
|
+
* on the wrapped collaboration group.
|
|
128
|
+
* </p>
|
|
129
|
+
*
|
|
130
|
+
* <p>
|
|
131
|
+
* <em>
|
|
132
|
+
* Note! This method sets the Locale on the <code>sv:collaborationGroupPage</code> where the wrapped collaboration group resides.
|
|
133
|
+
* Mutation of Locale will fail if the collaboration group page is locked.
|
|
134
|
+
* </em>
|
|
135
|
+
* </p>Gets the wrapped collaboration group.
|
|
136
|
+
*
|
|
137
|
+
* <p>
|
|
138
|
+
* <em>Note! This method is equivalent with {@link #unwrap()} if this wrapper is created with a <code>sv:collaborationGroup</code> Node.</em>
|
|
139
|
+
* </p>
|
|
140
|
+
* @author Magnus Lövgren
|
|
141
|
+
* @since Sitevision 3.6
|
|
142
|
+
*/
|
|
143
|
+
interface CollaborationGroupWrapper {
|
|
144
|
+
/**
|
|
145
|
+
* Gets the admins of the wrapped collaboration group.
|
|
146
|
+
* @return the admins of the wrapped collaboration group. Never null.
|
|
147
|
+
*/
|
|
148
|
+
getAdmins(): Set<unknown>;
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Checks if a user identity is admin of the wrapped collaboration group.
|
|
152
|
+
* @param aUserIdentity a user identity (or user)
|
|
153
|
+
* @return <code>true</code> if <code>aUserIdentity</code> is admin of the wrapped group, <code>false</code> otherwise
|
|
154
|
+
*/
|
|
155
|
+
isAdmin(aUserIdentity: Node): boolean;
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Adds a user identity as admin of the wrapped collaboration group.
|
|
159
|
+
*
|
|
160
|
+
* <p>
|
|
161
|
+
* <em>Only non-admins will be added</em>, i.e. a user identity that already is an admin will be ignored.
|
|
162
|
+
* Collaboration groups that are <em>inactive/unavailable</em> don't accept any new admins.
|
|
163
|
+
* </p>
|
|
164
|
+
*
|
|
165
|
+
* <p>
|
|
166
|
+
* <strong>Permission note!</strong> To add an admin to the wrapped group, current user must have
|
|
167
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP} on the group.
|
|
168
|
+
* </p>
|
|
169
|
+
* @param aUserIdentity a user identity (or user)
|
|
170
|
+
* @return <code>true</code> if <code>aUserIdentity</code> was added as admin of the wrapped group, <code>false</code> otherwise. <code>false</code> is always returned if <code>aUserIdentity</code> is <code>null</code> or already <em>is</em> admin of the wrapped collaboration group.
|
|
171
|
+
* @since Sitevision 4.5.4
|
|
172
|
+
*/
|
|
173
|
+
addAdmin(aUserIdentity: Node): boolean;
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Gets the members of the wrapped collaboration group.
|
|
177
|
+
*
|
|
178
|
+
* <p>
|
|
179
|
+
* <em>Note!</em> Admins are also considered as members.
|
|
180
|
+
* </p>
|
|
181
|
+
* @return the members of the wrapped collaboration group. Never null.
|
|
182
|
+
*/
|
|
183
|
+
getMembers(): Set<unknown>;
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Checks if a user identity is member of the wrapped collaboration group.
|
|
187
|
+
* @param aUserIdentity a user identity (or user)
|
|
188
|
+
* @return <code>true</code> if <code>aUserIdentity</code> is member of the wrapped group, <code>false</code> otherwise
|
|
189
|
+
*/
|
|
190
|
+
isMember(aUserIdentity: Node): boolean;
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Adds a user identity as member of the wrapped collaboration group.
|
|
194
|
+
*
|
|
195
|
+
* <p>
|
|
196
|
+
* <em>Only non-members will be added</em>, i.e. a user identity that already is a member will be ignored.
|
|
197
|
+
* Collaboration groups that are <em>inactive</em> doesn't accept any new members.
|
|
198
|
+
* </p>
|
|
199
|
+
*
|
|
200
|
+
* <p>
|
|
201
|
+
* <strong>Permission note!</strong> To add a member to the wrapped group, current user must have
|
|
202
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP} on the group -
|
|
203
|
+
* or current user must match the given user identity (i.e. "is yourself") and have
|
|
204
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#READ} on the wrapped group.
|
|
205
|
+
* </p>
|
|
206
|
+
* @param aUserIdentity a user identity (or user)
|
|
207
|
+
* @return <code>true</code> if <code>aUserIdentity</code> was added as member of the wrapped group, <code>false</code> otherwise. <code>false</code> is always returned if <code>aUserIdentity</code> is <code>null</code> or already <em>are</em> a member (or admin) of the wrapped collaboration group.
|
|
208
|
+
*/
|
|
209
|
+
addMember(aUserIdentity: Node): boolean;
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Removes a member from the wrapped collaboration group.
|
|
213
|
+
*
|
|
214
|
+
* <p>
|
|
215
|
+
* <em>Only members can be removed</em>, i.e. a user identity that is a non-member will be ignored. Note that an <em>admin</em>
|
|
216
|
+
* is also a <em>member</em> so removing a member might in fact also remove an <em>admin</em>, but <em>last admin</em> will never be removed.
|
|
217
|
+
* Members can not be removed from collaboration groups that are <em>inactive</em>.
|
|
218
|
+
* </p>
|
|
219
|
+
*
|
|
220
|
+
* <p>
|
|
221
|
+
* <strong>Permission note!</strong> To remove group membership for a user identity, current user
|
|
222
|
+
* must match the user identity (i.e. "is yourself") - or have
|
|
223
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
224
|
+
* and {@link senselogic.sitevision.api.security.PermissionUtil.Permission#READ} on the wrapped group.
|
|
225
|
+
* </p>
|
|
226
|
+
* @param aUserIdentity a user identity (or user)
|
|
227
|
+
* @return <code>true</code> if <code>aUserIdentity</code> was removed as member from the wrapped group, <code>false</code> otherwise. <code>false</code> is always returned if <code>aUserIdentity</code> is <code>null</code> or <em>not a member (or admin)</em> or <em>last admin</em> of the wrapped collaboration group.
|
|
228
|
+
*/
|
|
229
|
+
removeMember(aUserIdentity: Node): boolean;
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Gets the followers/eavesdroppers of the wrapped collaboration group.
|
|
233
|
+
* @return the followers of the wrapped collaboration group. Never null.
|
|
234
|
+
* @since Sitevision 4.1
|
|
235
|
+
*/
|
|
236
|
+
getFollowers(): Set<unknown>;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Checks if a user identity is a follower/eavesdropper of the wrapped collaboration group.
|
|
240
|
+
* @param aUserIdentity a user identity (or user)
|
|
241
|
+
* @return <code>true</code> if <code>aUserIdentity</code> is a follower of the wrapped group, <code>false</code> otherwise
|
|
242
|
+
* @since Sitevision 4.1
|
|
243
|
+
*/
|
|
244
|
+
isFollower(aUserIdentity: Node): boolean;
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Alters the name of the wrapped collaboration group.
|
|
248
|
+
*
|
|
249
|
+
* <p>
|
|
250
|
+
* <strong>Permission note!</strong> Current user must have
|
|
251
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
252
|
+
* on the wrapped collaboration group.
|
|
253
|
+
* </p>
|
|
254
|
+
*
|
|
255
|
+
* <p>
|
|
256
|
+
* <em>Name note!</em> Each group name must be (case-insensitively) unique in a given structure (i.e. collaboration group folder).
|
|
257
|
+
* This method will remove leading and trailing whitespace from <code>aGroupName</code> and use the remaining characters
|
|
258
|
+
* as new name. The wrapped group will <em>not</em> be renamed if <code>aGroupName</code> is <code>null</code>, whitespace only or if
|
|
259
|
+
* the remaining characters already exist as group name.
|
|
260
|
+
* </p>
|
|
261
|
+
*
|
|
262
|
+
* <p>
|
|
263
|
+
* <em>Tip!</em> Use {@link CollaborationGroupFolderUtil#containsCollaborationGroup(javax.jcr.Node, String)}
|
|
264
|
+
* to check if a named collaboration group already exists in the collaboration group folder of the group.
|
|
265
|
+
* </p>
|
|
266
|
+
* @param aGroupName the new group name
|
|
267
|
+
* @return <code>true</code> if group could be renamed to <code>aGroupName</code>, <code>false</code> otherwise.
|
|
268
|
+
* @since Sitevision 3.6.4
|
|
269
|
+
*/
|
|
270
|
+
renameGroup(aGroupName: string): boolean;
|
|
271
|
+
|
|
272
|
+
/**
|
|
273
|
+
* Gets the collaboration group type of the wrapped collaboration group.
|
|
274
|
+
* @return the collaboration group type
|
|
275
|
+
* @since Sitevision 4.1
|
|
276
|
+
*/
|
|
277
|
+
getGroupType(): CollaborationGroupType;
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* Changes the collaboration group type of the wrapped collaboration group.
|
|
281
|
+
*
|
|
282
|
+
* <p>
|
|
283
|
+
* The group type can not be changed for collaboration groups that are <em>inactive</em>.
|
|
284
|
+
* </p>
|
|
285
|
+
*
|
|
286
|
+
* <p>
|
|
287
|
+
* <strong>Permission note!</strong> Current user must have
|
|
288
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
289
|
+
* on the wrapped collaboration group in order to change group type. In order to change group type to
|
|
290
|
+
* {@link CollaborationGroupType#CLOSED},
|
|
291
|
+
* current user must also have {@link senselogic.sitevision.api.security.PermissionUtil.Permission#CREATE_CLOSED_COLLABORATION_GROUP}
|
|
292
|
+
* on the wrapped collaboration group.
|
|
293
|
+
* </p>
|
|
294
|
+
* @param aCollaborationGroupType the collaboration group type
|
|
295
|
+
* @since Sitevision 4.1
|
|
296
|
+
*/
|
|
297
|
+
setGroupType(aCollaborationGroupType: CollaborationGroupType): void;
|
|
298
|
+
|
|
299
|
+
/**
|
|
300
|
+
* Gets the collaboration group state of the wrapped collaboration group.
|
|
301
|
+
* @return the collaboration group state
|
|
302
|
+
* @since Sitevision 4.1
|
|
303
|
+
*/
|
|
304
|
+
getGroupState(): CollaborationGroupState;
|
|
305
|
+
|
|
306
|
+
/**
|
|
307
|
+
* Changes the collaboration group state of the wrapped collaboration group.
|
|
308
|
+
*
|
|
309
|
+
* <p>
|
|
310
|
+
* <strong>Permission note!</strong> Current user must have
|
|
311
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
312
|
+
* on the wrapped collaboration group in order to change group state.
|
|
313
|
+
* </p>
|
|
314
|
+
* @param aCollaborationGroupState the collaboration group state
|
|
315
|
+
* @since Sitevision 4.1
|
|
316
|
+
*/
|
|
317
|
+
setGroupState(aCollaborationGroupState: CollaborationGroupState): void;
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* Gets the group description of the wrapped collaboration group.
|
|
321
|
+
* @return the collaboration group description
|
|
322
|
+
* @since Sitevision 4.5.3
|
|
323
|
+
*/
|
|
324
|
+
getGroupDescription(): string;
|
|
325
|
+
|
|
326
|
+
/**
|
|
327
|
+
* Sets the group description of the wrapped collaboration group.
|
|
328
|
+
*
|
|
329
|
+
* <p>
|
|
330
|
+
* <strong>Permission note!</strong> Current user must have
|
|
331
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
332
|
+
* on the wrapped collaboration group in order to change group description.
|
|
333
|
+
* </p>
|
|
334
|
+
* @param aGroupDescription the collaboration group description
|
|
335
|
+
* @since Sitevision 4.5.3
|
|
336
|
+
*/
|
|
337
|
+
setGroupDescription(aGroupDescription: string): void;
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Gets the profile images folder of the wrapped collaboration group.
|
|
341
|
+
* @return the profile images folder or null
|
|
342
|
+
* @since Sitevision 4.5.3
|
|
343
|
+
*/
|
|
344
|
+
getProfileImagesFolder(): Node;
|
|
345
|
+
|
|
346
|
+
/**
|
|
347
|
+
* Gets the profile image of the wrapped collaboration group.
|
|
348
|
+
*
|
|
349
|
+
* <p>
|
|
350
|
+
* <em>Note!</em> This method returns the 'raw' profile image (i.e. a Node of type <code>sv:image</code>)
|
|
351
|
+
* that the group has uploaded. For buddy icons, see {@link senselogic.sitevision.api.render.BuddyIconRenderer}.
|
|
352
|
+
* </p>
|
|
353
|
+
* @return the profile image or null
|
|
354
|
+
* @since Sitevision 4.5.3
|
|
355
|
+
*/
|
|
356
|
+
getProfileImage(): Node;
|
|
357
|
+
|
|
358
|
+
/**
|
|
359
|
+
* Sets the profile image of the wrapped collaboration group.
|
|
360
|
+
*
|
|
361
|
+
* <p>
|
|
362
|
+
* This method <em>sets</em> the active profile image, i.e. determines which profile image that should be used.
|
|
363
|
+
* To <em>create a new</em> profile image (i.e. new binary data), you would typically use
|
|
364
|
+
* a method in {@link senselogic.sitevision.api.webresource.ImageUtil} first.
|
|
365
|
+
* </p>
|
|
366
|
+
*
|
|
367
|
+
* <p>
|
|
368
|
+
* <strong>Model note!</strong> A profile image must be a Node of type <code>sv:image</code>
|
|
369
|
+
* and a child of the <em>profile images folder</em> of the wrapped collaboration group.
|
|
370
|
+
* The profile images folder is available via {@link #getProfileImagesFolder()}.
|
|
371
|
+
* </p>
|
|
372
|
+
*
|
|
373
|
+
* <p>
|
|
374
|
+
* <strong>Permission note!</strong> Current user must have
|
|
375
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
376
|
+
* on the wrapped collaboration group in order to set the profile image.
|
|
377
|
+
* </p>
|
|
378
|
+
* @param aProfileImage the profile image
|
|
379
|
+
* @return <code>true</code> if the set operation succeeded, <code>false</code> otherwise
|
|
380
|
+
* @since Sitevision 4.5.3
|
|
381
|
+
*/
|
|
382
|
+
setProfileImage(aProfileImage: Node): boolean;
|
|
383
|
+
|
|
384
|
+
/**
|
|
385
|
+
* Alters the render Locale used by the wrapped collaboration group.
|
|
386
|
+
*
|
|
387
|
+
* <p>
|
|
388
|
+
* <strong>Permission note!</strong> Current user must have
|
|
389
|
+
* {@link senselogic.sitevision.api.security.PermissionUtil.Permission#MANAGE_COLLABORATION_GROUP}
|
|
390
|
+
* on the wrapped collaboration group.
|
|
391
|
+
* </p>
|
|
392
|
+
*
|
|
393
|
+
* <p>
|
|
394
|
+
* <em>
|
|
395
|
+
* Note! This method sets the Locale on the <code>sv:collaborationGroupPage</code> where the wrapped collaboration group resides.
|
|
396
|
+
* Mutation of Locale will fail if the collaboration group page is locked.
|
|
397
|
+
* </em>
|
|
398
|
+
* </p>
|
|
399
|
+
* @param aLocale the Locale, must be a supported/available Locale (as of {@link senselogic.sitevision.api.i18n.LocaleUtil#getAvailableLocales()})
|
|
400
|
+
* @return true if the set operation succeeded, false otherwise
|
|
401
|
+
* @since Sitevision 6.1
|
|
402
|
+
*/
|
|
403
|
+
setLocale(aLocale: unknown): boolean;
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* Gets the wrapped collaboration group.
|
|
407
|
+
*
|
|
408
|
+
* <p>
|
|
409
|
+
* <em>Note! This method is equivalent with {@link #unwrap()} if this wrapper is created with a <code>sv:collaborationGroup</code> Node.</em>
|
|
410
|
+
* </p>
|
|
411
|
+
* @return the wrapped collaboration group
|
|
412
|
+
* @since Sitevision 4.3
|
|
413
|
+
*/
|
|
414
|
+
getCollaborationGroup(): Node;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
export default CollaborationGroupWrapper;
|