SlideShare a Scribd company logo
1 of 11
Using the Atlassian Plugin Platform To
Create Your Own SaaS Plugin Platform
Building Qato’s Plugin SDK Using the
Atlassian Plugin Platform


Matthew Schmidt
CTO - DZone, Inc

                                         2
What are DZone and Qato?
• Leading Publisher For
  Developer Topics
 • Java, DevOps, Agile, Cloud

• Enterprise-class Question
  and Answer Platform
 • Skinnable, Pluggable, Scalable

 • Powered by Java, offered as
   SaaS, extensible with Atlassian
   Plugin Platform                   3
“   OSGI is quite possibly the most complicated
    framework available for Java today!
                                           ”
                                      Me




                                                  4
Why Atlassian Plugins?
• KISS - Don’t Reinvent the Wheel!
• Great abstraction of SpringDM and Felix
 • Java development without the application server restart

• Proven in the enterprise
• Easier collaboration with Atlassian users
 • What if you could easily integrate your wiki with your Q&A?
                                                                 5
Atlassian Platform to Qato
• Atlassian: Not meant for multiple copies of plugins
• Qato: Admin installs plugins, Tenant enables
• Qato: Sites must be able to enable different plugins
• Qato: Plugins must not affect the other Tenants
 • Theme overrides and new translations are very important


                                                             6
What Did We Change?
• Catch plugin events from core Atlassian components and tie them to
  the proper Tenant

• Support for traditional Spring annotations in plugins

  • @Autowired

  • @Controller

  • @RequestMapping

  • @Secured
                                                                       7
• Preferred FreeMarker for views over Velocity
“   The Atlassian Plugin Framework allowed DZone to
    quickly and easily add a plugin system to it’s
    Enterprise Q&A Platform, Qato.
                                     ”
     #summit11 #qato #dzone


                                                      8
Using the Atlassian Plugin Platform To Create Your Own SaaS Plugin Platform
Using the Atlassian Plugin Platform To Create Your Own SaaS Plugin Platform

More Related Content

What's hot

Deploying IIS and ASP.NET with Puppet
Deploying IIS and ASP.NET with PuppetDeploying IIS and ASP.NET with Puppet
Deploying IIS and ASP.NET with PuppetPuppet
 
How to be Successful in the DevOps Business
How to be Successful in the DevOps BusinessHow to be Successful in the DevOps Business
How to be Successful in the DevOps BusinessAtlassian
 
Continuous delivery applied (RJUG)
Continuous delivery applied (RJUG)Continuous delivery applied (RJUG)
Continuous delivery applied (RJUG)Mike McGarr
 
Managing PowerShell DSC with Puppet
Managing PowerShell DSC with PuppetManaging PowerShell DSC with Puppet
Managing PowerShell DSC with PuppetPuppet
 
Connect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket PipelinesConnect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket PipelinesAtlassian
 
Automating OpenStack clouds and beyond w/ StackStorm
Automating OpenStack clouds and beyond w/ StackStormAutomating OpenStack clouds and beyond w/ StackStorm
Automating OpenStack clouds and beyond w/ StackStormOpenStack_Online
 
WinOps Conf 2015 - Microsoft Azure & Open Source
WinOps Conf 2015 - Microsoft Azure & Open SourceWinOps Conf 2015 - Microsoft Azure & Open Source
WinOps Conf 2015 - Microsoft Azure & Open SourceWinOps Conf
 
Release the Monkeys ! Testing in the Wild at Netflix
Release the Monkeys !  Testing in the Wild at NetflixRelease the Monkeys !  Testing in the Wild at Netflix
Release the Monkeys ! Testing in the Wild at NetflixGareth Bowles
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyMike Brittain
 
How Atlassian Scales Bitbucket Data Center on AWS
How Atlassian Scales Bitbucket Data Center on AWSHow Atlassian Scales Bitbucket Data Center on AWS
How Atlassian Scales Bitbucket Data Center on AWSAtlassian
 
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...SOASTA
 
Continuous Deployment at Kitchensurfing
Continuous Deployment at KitchensurfingContinuous Deployment at Kitchensurfing
Continuous Deployment at KitchensurfingLars Kluge
 
Top 8 mistakes developer teams make in their first serverless project
Top 8 mistakes developer teams make in their first serverless projectTop 8 mistakes developer teams make in their first serverless project
Top 8 mistakes developer teams make in their first serverless projectPaul Swail
 
WinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSC
WinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSCWinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSC
WinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSCWinOps Conf
 
Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)Mesosphere Inc.
 
Automation: PowerShell & DSC
Automation: PowerShell & DSCAutomation: PowerShell & DSC
Automation: PowerShell & DSCJosh Gillespie
 
First steps with Gutenberg for developers - WC Prague 2020
First steps with Gutenberg for developers - WC Prague 2020First steps with Gutenberg for developers - WC Prague 2020
First steps with Gutenberg for developers - WC Prague 2020Magdalena Paciorek
 
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017Rafał Leszko
 
Configuration As Code - Adoption of the Job DSL Plugin at Netflix
Configuration As Code - Adoption of the Job DSL Plugin at NetflixConfiguration As Code - Adoption of the Job DSL Plugin at Netflix
Configuration As Code - Adoption of the Job DSL Plugin at NetflixJustin Ryan
 
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows ServerWinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows ServerWinOps Conf
 

What's hot (20)

Deploying IIS and ASP.NET with Puppet
Deploying IIS and ASP.NET with PuppetDeploying IIS and ASP.NET with Puppet
Deploying IIS and ASP.NET with Puppet
 
How to be Successful in the DevOps Business
How to be Successful in the DevOps BusinessHow to be Successful in the DevOps Business
How to be Successful in the DevOps Business
 
Continuous delivery applied (RJUG)
Continuous delivery applied (RJUG)Continuous delivery applied (RJUG)
Continuous delivery applied (RJUG)
 
Managing PowerShell DSC with Puppet
Managing PowerShell DSC with PuppetManaging PowerShell DSC with Puppet
Managing PowerShell DSC with Puppet
 
Connect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket PipelinesConnect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket Pipelines
 
Automating OpenStack clouds and beyond w/ StackStorm
Automating OpenStack clouds and beyond w/ StackStormAutomating OpenStack clouds and beyond w/ StackStorm
Automating OpenStack clouds and beyond w/ StackStorm
 
WinOps Conf 2015 - Microsoft Azure & Open Source
WinOps Conf 2015 - Microsoft Azure & Open SourceWinOps Conf 2015 - Microsoft Azure & Open Source
WinOps Conf 2015 - Microsoft Azure & Open Source
 
Release the Monkeys ! Testing in the Wild at Netflix
Release the Monkeys !  Testing in the Wild at NetflixRelease the Monkeys !  Testing in the Wild at Netflix
Release the Monkeys ! Testing in the Wild at Netflix
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
 
How Atlassian Scales Bitbucket Data Center on AWS
How Atlassian Scales Bitbucket Data Center on AWSHow Atlassian Scales Bitbucket Data Center on AWS
How Atlassian Scales Bitbucket Data Center on AWS
 
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
How to Set Up Mobile Continuous Integration with Real Devices: CloudBees & SO...
 
Continuous Deployment at Kitchensurfing
Continuous Deployment at KitchensurfingContinuous Deployment at Kitchensurfing
Continuous Deployment at Kitchensurfing
 
Top 8 mistakes developer teams make in their first serverless project
Top 8 mistakes developer teams make in their first serverless projectTop 8 mistakes developer teams make in their first serverless project
Top 8 mistakes developer teams make in their first serverless project
 
WinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSC
WinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSCWinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSC
WinOps Conf 2016 - Ed Wilson - Configuration Management with Azure DSC
 
Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)
 
Automation: PowerShell & DSC
Automation: PowerShell & DSCAutomation: PowerShell & DSC
Automation: PowerShell & DSC
 
First steps with Gutenberg for developers - WC Prague 2020
First steps with Gutenberg for developers - WC Prague 2020First steps with Gutenberg for developers - WC Prague 2020
First steps with Gutenberg for developers - WC Prague 2020
 
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
 
Configuration As Code - Adoption of the Job DSL Plugin at Netflix
Configuration As Code - Adoption of the Job DSL Plugin at NetflixConfiguration As Code - Adoption of the Job DSL Plugin at Netflix
Configuration As Code - Adoption of the Job DSL Plugin at Netflix
 
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows ServerWinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
 

Viewers also liked

Assembling Ad-Hoc Teams for Fun, Profit and National Security
Assembling Ad-Hoc Teams for Fun, Profit and National SecurityAssembling Ad-Hoc Teams for Fun, Profit and National Security
Assembling Ad-Hoc Teams for Fun, Profit and National SecurityAtlassian
 
Getting the Most Out of OpenSocial Gadgets
Getting the Most Out of OpenSocial GadgetsGetting the Most Out of OpenSocial Gadgets
Getting the Most Out of OpenSocial GadgetsAtlassian
 
Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012
Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012
Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012Atlassian
 
User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012
User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012
User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012Atlassian
 
Introduction to DZone
Introduction to DZoneIntroduction to DZone
Introduction to DZoneBrandon Hoe
 
Developer Tools State of the Union
Developer Tools State of the UnionDeveloper Tools State of the Union
Developer Tools State of the UnionAtlassian
 

Viewers also liked (6)

Assembling Ad-Hoc Teams for Fun, Profit and National Security
Assembling Ad-Hoc Teams for Fun, Profit and National SecurityAssembling Ad-Hoc Teams for Fun, Profit and National Security
Assembling Ad-Hoc Teams for Fun, Profit and National Security
 
Getting the Most Out of OpenSocial Gadgets
Getting the Most Out of OpenSocial GadgetsGetting the Most Out of OpenSocial Gadgets
Getting the Most Out of OpenSocial Gadgets
 
Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012
Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012
Mobile Dev Trends and Confluence Mobile, AtlasCamp US 2012
 
User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012
User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012
User Macros: Making Your Own Improvements to Confluence - Atlassian Summit 2012
 
Introduction to DZone
Introduction to DZoneIntroduction to DZone
Introduction to DZone
 
Developer Tools State of the Union
Developer Tools State of the UnionDeveloper Tools State of the Union
Developer Tools State of the Union
 

Similar to Using the Atlassian Plugin Platform To Create Your Own SaaS Plugin Platform

Geek Nights Hong Kong
Geek Nights Hong KongGeek Nights Hong Kong
Geek Nights Hong KongRahul Gupta
 
"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick
"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick
"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke KilpatrickAtlassian
 
Developing for the Atlassian Ecosystem
Developing for the Atlassian EcosystemDeveloping for the Atlassian Ecosystem
Developing for the Atlassian EcosystemAlex Henderson
 
Atlassian sdk (2)
Atlassian sdk (2)Atlassian sdk (2)
Atlassian sdk (2)Provectus
 
State of the Ecosystem - Atlassian Summit 2010
State of the Ecosystem - Atlassian Summit 2010State of the Ecosystem - Atlassian Summit 2010
State of the Ecosystem - Atlassian Summit 2010Atlassian
 
AtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemand
AtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemandAtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemand
AtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemandcolleenfry
 
Future of Your Atlassian Platform - Data Center and Cloud Migration
Future of Your Atlassian Platform - Data Center and Cloud MigrationFuture of Your Atlassian Platform - Data Center and Cloud Migration
Future of Your Atlassian Platform - Data Center and Cloud MigrationAUGNYC
 
CA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseCA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseMark Sigler
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Mee Nam Lee
 
Stackato Private PaaS for the Agile Enterprise
Stackato Private PaaS for the Agile EnterpriseStackato Private PaaS for the Agile Enterprise
Stackato Private PaaS for the Agile EnterpriseAngie Hirata
 
K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...
K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...
K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...Dr. Wilfred Lin (Ph.D.)
 
Cloud Provisioning: The SDKs Under the Hood
Cloud Provisioning: The SDKs Under the HoodCloud Provisioning: The SDKs Under the Hood
Cloud Provisioning: The SDKs Under the HoodEverett Toews
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithMarkus Eisele
 
Tech Talk on Cloud Computing
Tech Talk on Cloud ComputingTech Talk on Cloud Computing
Tech Talk on Cloud ComputingITviec
 
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...Juarez Junior
 
OpenStack Glance Project Update
OpenStack Glance Project UpdateOpenStack Glance Project Update
OpenStack Glance Project UpdateBrian Rosmaita
 
Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)
Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)
Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)VMware Tanzu
 
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01Cloud Elements
 

Similar to Using the Atlassian Plugin Platform To Create Your Own SaaS Plugin Platform (20)

Geek Nights Hong Kong
Geek Nights Hong KongGeek Nights Hong Kong
Geek Nights Hong Kong
 
"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick
"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick
"Hacking" JIRA and Confluence Cloud Part 2 - Build Your Own - Luke Kilpatrick
 
Developing for the Atlassian Ecosystem
Developing for the Atlassian EcosystemDeveloping for the Atlassian Ecosystem
Developing for the Atlassian Ecosystem
 
Atlassian sdk (2)
Atlassian sdk (2)Atlassian sdk (2)
Atlassian sdk (2)
 
State of the Ecosystem - Atlassian Summit 2010
State of the Ecosystem - Atlassian Summit 2010State of the Ecosystem - Atlassian Summit 2010
State of the Ecosystem - Atlassian Summit 2010
 
AtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemand
AtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemandAtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemand
AtlasCamp 2013: A Re-Intriduction to Atlassian Connect: Add-ons for OnDemand
 
Future of Your Atlassian Platform - Data Center and Cloud Migration
Future of Your Atlassian Platform - Data Center and Cloud MigrationFuture of Your Atlassian Platform - Data Center and Cloud Migration
Future of Your Atlassian Platform - Data Center and Cloud Migration
 
CA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseCA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the Enterprise
 
Selenium practical
Selenium practicalSelenium practical
Selenium practical
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)
 
Stackato Private PaaS for the Agile Enterprise
Stackato Private PaaS for the Agile EnterpriseStackato Private PaaS for the Agile Enterprise
Stackato Private PaaS for the Agile Enterprise
 
K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...
K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...
K1 keynote 1_oracle_integrated_cloud_strategy_and_vision_for_journey_to_cloud...
 
Cloud Provisioning: The SDKs Under the Hood
Cloud Provisioning: The SDKs Under the HoodCloud Provisioning: The SDKs Under the Hood
Cloud Provisioning: The SDKs Under the Hood
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
Tech Talk on Cloud Computing
Tech Talk on Cloud ComputingTech Talk on Cloud Computing
Tech Talk on Cloud Computing
 
The Future of Cloud Innovation, featuring Adrian Cockcroft
The Future of Cloud Innovation, featuring Adrian CockcroftThe Future of Cloud Innovation, featuring Adrian Cockcroft
The Future of Cloud Innovation, featuring Adrian Cockcroft
 
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
 
OpenStack Glance Project Update
OpenStack Glance Project UpdateOpenStack Glance Project Update
OpenStack Glance Project Update
 
Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)
Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)
Migrating .NET and .NET Core to Pivotal Cloud Foundry (1/2)
 
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
Atlassianconnectadd onsforeveryplatform-tanguycrusson-140925195129-phpapp01
 

More from Atlassian

International Women's Day 2020
International Women's Day 2020International Women's Day 2020
International Women's Day 2020Atlassian
 
10 emerging trends that will unbreak your workplace in 2020
10 emerging trends that will unbreak your workplace in 202010 emerging trends that will unbreak your workplace in 2020
10 emerging trends that will unbreak your workplace in 2020Atlassian
 
Forge App Showcase
Forge App ShowcaseForge App Showcase
Forge App ShowcaseAtlassian
 
Let's Build an Editor Macro with Forge UI
Let's Build an Editor Macro with Forge UILet's Build an Editor Macro with Forge UI
Let's Build an Editor Macro with Forge UIAtlassian
 
Meet the Forge Runtime
Meet the Forge RuntimeMeet the Forge Runtime
Meet the Forge RuntimeAtlassian
 
Forge UI: A New Way to Customize the Atlassian User Experience
Forge UI: A New Way to Customize the Atlassian User ExperienceForge UI: A New Way to Customize the Atlassian User Experience
Forge UI: A New Way to Customize the Atlassian User ExperienceAtlassian
 
Take Action with Forge Triggers
Take Action with Forge TriggersTake Action with Forge Triggers
Take Action with Forge TriggersAtlassian
 
Observability and Troubleshooting in Forge
Observability and Troubleshooting in ForgeObservability and Troubleshooting in Forge
Observability and Troubleshooting in ForgeAtlassian
 
Trusted by Default: The Forge Security & Privacy Model
Trusted by Default: The Forge Security & Privacy ModelTrusted by Default: The Forge Security & Privacy Model
Trusted by Default: The Forge Security & Privacy ModelAtlassian
 
Designing Forge UI: A Story of Designing an App UI System
Designing Forge UI: A Story of Designing an App UI SystemDesigning Forge UI: A Story of Designing an App UI System
Designing Forge UI: A Story of Designing an App UI SystemAtlassian
 
Forge: Under the Hood
Forge: Under the HoodForge: Under the Hood
Forge: Under the HoodAtlassian
 
Access to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIsAccess to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIsAtlassian
 
Design Your Next App with the Atlassian Vendor Sketch Plugin
Design Your Next App with the Atlassian Vendor Sketch PluginDesign Your Next App with the Atlassian Vendor Sketch Plugin
Design Your Next App with the Atlassian Vendor Sketch PluginAtlassian
 
Tear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the BuildingTear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the BuildingAtlassian
 
Nailing Measurement: a Framework for Measuring Metrics that Matter
Nailing Measurement: a Framework for Measuring Metrics that MatterNailing Measurement: a Framework for Measuring Metrics that Matter
Nailing Measurement: a Framework for Measuring Metrics that MatterAtlassian
 
Building Apps With Color Blind Users in Mind
Building Apps With Color Blind Users in MindBuilding Apps With Color Blind Users in Mind
Building Apps With Color Blind Users in MindAtlassian
 
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...Atlassian
 
Beyond Diversity: A Guide to Building Balanced Teams
Beyond Diversity: A Guide to Building Balanced TeamsBeyond Diversity: A Guide to Building Balanced Teams
Beyond Diversity: A Guide to Building Balanced TeamsAtlassian
 
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed Team
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed TeamThe Road(map) to Las Vegas - The Story of an Emerging Self-Managed Team
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed TeamAtlassian
 
Building Apps With Enterprise in Mind
Building Apps With Enterprise in MindBuilding Apps With Enterprise in Mind
Building Apps With Enterprise in MindAtlassian
 

More from Atlassian (20)

International Women's Day 2020
International Women's Day 2020International Women's Day 2020
International Women's Day 2020
 
10 emerging trends that will unbreak your workplace in 2020
10 emerging trends that will unbreak your workplace in 202010 emerging trends that will unbreak your workplace in 2020
10 emerging trends that will unbreak your workplace in 2020
 
Forge App Showcase
Forge App ShowcaseForge App Showcase
Forge App Showcase
 
Let's Build an Editor Macro with Forge UI
Let's Build an Editor Macro with Forge UILet's Build an Editor Macro with Forge UI
Let's Build an Editor Macro with Forge UI
 
Meet the Forge Runtime
Meet the Forge RuntimeMeet the Forge Runtime
Meet the Forge Runtime
 
Forge UI: A New Way to Customize the Atlassian User Experience
Forge UI: A New Way to Customize the Atlassian User ExperienceForge UI: A New Way to Customize the Atlassian User Experience
Forge UI: A New Way to Customize the Atlassian User Experience
 
Take Action with Forge Triggers
Take Action with Forge TriggersTake Action with Forge Triggers
Take Action with Forge Triggers
 
Observability and Troubleshooting in Forge
Observability and Troubleshooting in ForgeObservability and Troubleshooting in Forge
Observability and Troubleshooting in Forge
 
Trusted by Default: The Forge Security & Privacy Model
Trusted by Default: The Forge Security & Privacy ModelTrusted by Default: The Forge Security & Privacy Model
Trusted by Default: The Forge Security & Privacy Model
 
Designing Forge UI: A Story of Designing an App UI System
Designing Forge UI: A Story of Designing an App UI SystemDesigning Forge UI: A Story of Designing an App UI System
Designing Forge UI: A Story of Designing an App UI System
 
Forge: Under the Hood
Forge: Under the HoodForge: Under the Hood
Forge: Under the Hood
 
Access to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIsAccess to User Activities - Activity Platform APIs
Access to User Activities - Activity Platform APIs
 
Design Your Next App with the Atlassian Vendor Sketch Plugin
Design Your Next App with the Atlassian Vendor Sketch PluginDesign Your Next App with the Atlassian Vendor Sketch Plugin
Design Your Next App with the Atlassian Vendor Sketch Plugin
 
Tear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the BuildingTear Up Your Roadmap and Get Out of the Building
Tear Up Your Roadmap and Get Out of the Building
 
Nailing Measurement: a Framework for Measuring Metrics that Matter
Nailing Measurement: a Framework for Measuring Metrics that MatterNailing Measurement: a Framework for Measuring Metrics that Matter
Nailing Measurement: a Framework for Measuring Metrics that Matter
 
Building Apps With Color Blind Users in Mind
Building Apps With Color Blind Users in MindBuilding Apps With Color Blind Users in Mind
Building Apps With Color Blind Users in Mind
 
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...
Creating Inclusive Experiences: Balancing Personality and Accessibility in UX...
 
Beyond Diversity: A Guide to Building Balanced Teams
Beyond Diversity: A Guide to Building Balanced TeamsBeyond Diversity: A Guide to Building Balanced Teams
Beyond Diversity: A Guide to Building Balanced Teams
 
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed Team
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed TeamThe Road(map) to Las Vegas - The Story of an Emerging Self-Managed Team
The Road(map) to Las Vegas - The Story of an Emerging Self-Managed Team
 
Building Apps With Enterprise in Mind
Building Apps With Enterprise in MindBuilding Apps With Enterprise in Mind
Building Apps With Enterprise in Mind
 

Recently uploaded

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 

Recently uploaded (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 

Using the Atlassian Plugin Platform To Create Your Own SaaS Plugin Platform

  • 1.
  • 2.
  • 3. Using the Atlassian Plugin Platform To Create Your Own SaaS Plugin Platform Building Qato’s Plugin SDK Using the Atlassian Plugin Platform Matthew Schmidt CTO - DZone, Inc 2
  • 4. What are DZone and Qato? • Leading Publisher For Developer Topics • Java, DevOps, Agile, Cloud • Enterprise-class Question and Answer Platform • Skinnable, Pluggable, Scalable • Powered by Java, offered as SaaS, extensible with Atlassian Plugin Platform 3
  • 5. OSGI is quite possibly the most complicated framework available for Java today! ” Me 4
  • 6. Why Atlassian Plugins? • KISS - Don’t Reinvent the Wheel! • Great abstraction of SpringDM and Felix • Java development without the application server restart • Proven in the enterprise • Easier collaboration with Atlassian users • What if you could easily integrate your wiki with your Q&A? 5
  • 7. Atlassian Platform to Qato • Atlassian: Not meant for multiple copies of plugins • Qato: Admin installs plugins, Tenant enables • Qato: Sites must be able to enable different plugins • Qato: Plugins must not affect the other Tenants • Theme overrides and new translations are very important 6
  • 8. What Did We Change? • Catch plugin events from core Atlassian components and tie them to the proper Tenant • Support for traditional Spring annotations in plugins • @Autowired • @Controller • @RequestMapping • @Secured 7 • Preferred FreeMarker for views over Velocity
  • 9. The Atlassian Plugin Framework allowed DZone to quickly and easily add a plugin system to it’s Enterprise Q&A Platform, Qato. ” #summit11 #qato #dzone 8

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n