Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

The Development Tools module provides a basis for creating plugins to interact with a running Magnolia instance. Using the endpoints provided by this module you can create interactive IDEs with intellisense features to help facilitate the development process.

Installing

Module not completed yet. Proposed API shown below.

<dependency>
  <groupId>info.magnolia.development</groupId>
  <artifactId>magnolia-development-tools</artifactId>
  <version>${notYetReleased}</version>
</dependency>

Usage

This module comes with a REST endpoint for querying the different definition registries.

Registry Endpoint

Returns registry data in the form of a JSON object.

Request URL

/.rest/registry/v1/{registry}


Parameter

Description

Parameter type

Data type

registry

required

The name of the registry to access.

Example:  modules, templates, fields, dialogs

path

String

module

optional

Limit the request to target a specific module.

pathString

onlyDefinitionProviders

optional, default is false

Used together with a modules registry request. Set this flag if you only want a list of modules which provide definitions.

query

Boolean

Example: Get all modules

Get all the modules from the ModuleRegistry (except the language modules).

curl -X GET 'http://localhost:8080/magnoliaAuthor/.rest/registry/v1/modules' \ 
-u superuser:superuser

 Click to see the response
[  
   "about-app",
   "appswitcher",
   "cache",
   "cache-app",
   "cache-browser-app",
   "categorization",
   "categorization-support",
   "ce-product-descriptor",
   "config",
   "contacts",
   "core",
   "dam",
   "dam-app",
   "dam-imaging",
   "dam-jcr",
   "dam-templating",
   "definitions-app",
   "development-tools",
   "ehcache3",
   "form",
   "freemarker-support",
   "google-sitemap",
   "groovy",
   "i18n",
   "imaging",
   "imaging-support",
   "javascript-models",
   "jcr-browser-app",
   "jcr-tools",
   "log-tools",
   "magnolia-resources-templating",
   "mail",
   "messages-app",
   "mte",
   "mte-imaging",
   "mtk",
   "pages",
   "password-manager",
   "publishing-app",
   "publishing-core",
   "publishing-receiver",
   "publishing-sender",
   "rendering",
   "resource-loader",
   "resources",
   "resources-app",
   "rest-client",
   "rest-content-delivery",
   "rest-integration",
   "rest-services",
   "resteasy-client",
   "rssaggregator",
   "scheduler",
   "security-app",
   "site",
   "site-app",
   "task-management",
   "templating",
   "templating-jsp",
   "ui-admincentral",
   "ui-contentapp",
   "ui-framework",
   "ui-mediaeditor",
   "virtual-uri",
   "webapp"
]

Example: Get all modules providing definitions

Get all the modules from the ModuleRegistry (except the language modules) which provide definitions.

curl -X GET 'http://localhost:8080/magnoliaAuthor/.rest/registry/v1/modules?onlyDefinitionProviders=true' \ 
-u superuser:superuser

 Click to see the response
[  
   "about-app",
   "cache-app",
   "cache-browser-app",
   "categorization",
   "contacts",
   "dam-app",
   "definitions-app",
   "development-tools",
   "eclipse-plugin-support",
   "form",
   "google-sitemap",
   "groovy",
   "jcr-browser-app",
   "jcr-tools",
   "log-tools",
   "mail",
   "messages-app",
   "mte",
   "mtk",
   "pages",
   "password-manager",
   "publishing-app",
   "rendering",
   "resources",
   "resources-app",
   "rest-services",
   "rssaggregator",
   "scheduler",
   "security-app",
   "site",
   "site-app",
   "templating",
   "ui-admincentral",
   "ui-framework",
   "ui-mediaeditor"
]

Example: Get a list of definition registries used by a module

Query a specific module for the definition types it provides.

curl -X GET 'http://localhost:8080/magnoliaAuthor/.rest/registry/v1/modules/ui-framework' \ 
-u superuser:superuser

 Click to see the response
[  
   "dialog",
   "fieldType"
]

Source Code

The source for this module can be found here: https://git.magnolia-cms.com/projects/FORGE/repos/development-tools/browse

Issues, Bugs, Improvements

Either comment on this page or open a ticket here: DEVTOOLS

  • No labels