Plugging the users in
extend your application with pluggable Groovy DSL

© 2013 SpringOne 2GX. All rights reserved. Do not...
– scheduled tasks
– scheduled tasks
– Custom security realms
– scheduled tasks
– Custom security realms
– Change resolution rules
–
–
–
–

scheduled tasks
Custom security realms
Change resolution rules
Manipulate downloaded
content
–
–
–
–

scheduled tasks
Custom security realms
Change resolution rules
Manipulate downloaded
content
– Listeners on stora...
– Custom security realms
– Change resolution rules
– Manipulate downloaded
content
– Listeners on storage
events
– searche...
– Change resolution rules
– Manipulate downloaded
content
– Listeners on storage
events
– searches
– New rest commands
– Manipulate downloaded
content
– Listeners on storage
events
– searches
– New rest commands
– Custom promotions
– Listeners on storage
events
– searches
– New rest commands
– Custom promotions
– Deploy and query
artifacts and metadata
– Etc.
•
•
–
–

•
•
•
•
–
–
•
•
•
•
•
•
•
–
–
–

•
•
•
•
•
–
•
•
•
•
•

System.exit(0)

•
–
–

•
•
•
–

•
•
•
–
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Plugging the users in - extend your application with pluggable Groovy DSL
Upcoming SlideShare
Loading in …5
×

Plugging the users in - extend your application with pluggable Groovy DSL

290 views

Published on

Speakers: Baruch Sadogursky
It is often beneficial to allow users extend your software with their own logic. With the rise of dynamic languages on the JVM it is also much more easier to do than ever before. In this session we will share our experience in creating Groovy authored user plugins interface.
After a brief introduction to domain specific languages (DSLs), their relevance to user plugins and how they can be easily implemented in Groovy, we’ll look at more user-friendly, but developer-challenging type of DSLs, which support plugins written both in Groovy or Java.
Good public API design is another very important aspect - while the APIs have to be broad enough to allow interesting functionality, internals should stay close to allow changes and further development. Exposing APIs to the world come with great responsibility - once ublished they can’t be changed without a price, so it is important keep backwards compatibility in mind.
Another very important aspect is security - you let strangers into your chambers, and you better be ready. Leveraging security mechanisms is essential to establish proper sandboxing and protect your application from malicious or faulty plugins.
Finally, we will cover another very important and nontrivial aspect of user plugins exposure - the classpath isolation when your plugins require dependencies. We will compare different solutions like establishing classpath hierarchies, OSGi, JBoss modules and the long-awaited Project Jigsaw.

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
290
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Plugging the users in - extend your application with pluggable Groovy DSL

  1. 1. Plugging the users in extend your application with pluggable Groovy DSL © 2013 SpringOne 2GX. All rights reserved. Do not distribute without permission.
  2. 2. – scheduled tasks
  3. 3. – scheduled tasks – Custom security realms
  4. 4. – scheduled tasks – Custom security realms – Change resolution rules
  5. 5. – – – – scheduled tasks Custom security realms Change resolution rules Manipulate downloaded content
  6. 6. – – – – scheduled tasks Custom security realms Change resolution rules Manipulate downloaded content – Listeners on storage events
  7. 7. – Custom security realms – Change resolution rules – Manipulate downloaded content – Listeners on storage events – searches
  8. 8. – Change resolution rules – Manipulate downloaded content – Listeners on storage events – searches – New rest commands
  9. 9. – Manipulate downloaded content – Listeners on storage events – searches – New rest commands – Custom promotions
  10. 10. – Listeners on storage events – searches – New rest commands – Custom promotions – Deploy and query artifacts and metadata
  11. 11. – Etc.
  12. 12. • • – – •
  13. 13. • •
  14. 14. • – –
  15. 15. • • • • • •
  16. 16. • – – – • •
  17. 17. • • • –
  18. 18. • • • •
  19. 19. • System.exit(0) • – – •
  20. 20. • • – • •
  21. 21. • –

×