Class AbstractSerializationSecurityManager

    • Field Detail

      • completeClassNameWhitelist

        protected volatile com.google.common.base.Optional<Set<String>> completeClassNameWhitelist
      • pluginProvidedClassNameWhitelist

        protected volatile List<String> pluginProvidedClassNameWhitelist
    • Constructor Detail

      • AbstractSerializationSecurityManager

        protected AbstractSerializationSecurityManager​(com.atlassian.plugin.PluginAccessor pluginAccessor,
                                                       com.atlassian.plugin.event.PluginEventManager pluginEventManager,
                                                       SystemSerializableClassWhitelistProvider systemSerializableClassWhitelistProvider)
    • Method Detail

      • registerPluginEventListeners

        @PostConstruct
        public void registerPluginEventListeners()
                                          throws Exception
        Throws:
        Exception
      • unregisterPluginEventListeners

        @PreDestroy
        public void unregisterPluginEventListeners()
                                            throws Exception
        Unregistering event listener on PreDestroy can save from processing multiple events when all plugins will be unregistered
        Throws:
        Exception
      • pluginUninstalled

        public void pluginUninstalled​(com.atlassian.plugin.event.events.PluginUninstalledEvent pluginUninstalledEvent)
      • pluginUpgraded

        public void pluginUpgraded​(com.atlassian.plugin.event.events.PluginUpgradedEvent pluginUpgradedEvent)
      • pluginEnabled

        public void pluginEnabled​(com.atlassian.plugin.event.events.PluginEnabledEvent pluginEnabledEvent)
      • pluginDisabled

        public void pluginDisabled​(com.atlassian.plugin.event.events.PluginDisabledEvent pluginDisabledEvent)
      • pluginModuleEnabled

        public void pluginModuleEnabled​(com.atlassian.plugin.event.events.PluginModuleEnabledEvent pluginModuleEnabledEvent)
      • pluginModuleDisabled

        public void pluginModuleDisabled​(com.atlassian.plugin.event.events.PluginModuleDisabledEvent pluginModuleDisabledEvent)
      • recalculateMasterClassWhitelist

        protected final void recalculateMasterClassWhitelist()
        This method should be called by implementations after any of the class whitelist sources has changed.
      • addWhitelistedClassNames

        protected abstract void addWhitelistedClassNames​(@NotNull
                                                         com.google.common.collect.ImmutableSet.Builder<String> whitelistBuilder)
        This method should be overridden by implementations to modify class whitelist.