Skip to content

NaoMod/atl-server

Folders and files

NameName
Last commit message
Last commit date
Jan 27, 2025
Oct 14, 2024
Oct 16, 2024
Oct 14, 2024
Oct 14, 2024
Oct 14, 2024
Oct 21, 2024
Oct 14, 2024
Oct 14, 2024
Oct 14, 2024
Jan 27, 2025
Oct 14, 2024

Repository files navigation

ATL Transformation Server

This project is a REST API server designed to manage and execute ATL transformations. It integrates with the atl_zoo repository to access transformation definitions and provides endpoints to manage, search, apply, and chain transformations.

Features

  • Add, list, and delete ATL transformations.

  • Apply transformations using uploaded input models.

  • Chain multiple transformations.

  • Search within ATL transformation files.

API Endpoints

List all transformations:

curl localhost:8080/transformations | jq

List enabled transformations:

curl localhost:8080/transformations/enabled | jq

Get a Specific Transformation:

curl localhost:8080/transformation/Class2Relational

Apply a Transformation:

Unique Metamodels (source & target)

curl localhost:8080/transformation/Class2Relational/apply -F IN="@./Class.xmi"        

Multiple source Metamodels

curl localhost:8080/transformation/Maven2Ant/apply \
  -F INMaven="@./example/mavenFile.xmi" \
  -F INProject="@./example/projectFile.xmi"

Search Transformations:

curl localhost:8080/transformations/search?query=<search_term>

Categorize Transformations by their InputMetamodels:

curl localhost:8080/transformations/byInputMetamodel | jq

Search transformations by their Input and output metamodels:

curl "http://localhost:8080/transformation/hasTransformation?inputMetamodel=Ant.ecore&outputMetamodel=Maven.ecore"