From 3be71c32be0124228b56d638f3bf6e88b0bded82 Mon Sep 17 00:00:00 2001 From: JEAF Development Team Date: Fri, 26 Apr 2024 10:28:24 +0200 Subject: [PATCH] Implemented and tested #141 --- .../main/resources/Security_Roles_Report.md | 28 +- .../resource/ProductServiceResource.java | 55 +- ...ctServiceRESTProxyServiceProviderImpl.java | 83 +- .../xmi/JEAF_Services_API.uml | 324 +- jeaf-generator-test-model/xmi/JEAF_Test.uml | 3784 ++++---- jeaf-generator-test-model/xmi/JMM.profile.uml | 1742 ++-- .../xmi/Java_5_0_Profile.uml | 958 +- .../xmi/Java_Extensions.uml | 4 +- .../xmi/Java_Mail_API.uml | 1436 +-- .../xmi/Java_Profile.uml | 8 +- .../xmi/Java_constraints.uml | 36 +- .../xmi/TestProfile.profile.uml | 70 +- ...ML_Profile_for_Java.deployment.profile.uml | 48 +- .../xmi/UML_Profile_for_Java.profile.uml | 178 +- ...ML_Profile_for_Java.statements.profile.uml | 88 +- ...file.Dependency_Matrix_Profile.profile.uml | 1096 +-- ...Draw_Profile.DSL_Customization.profile.uml | 2782 +++--- ...MagicDraw_Profile.Find_By_Text.profile.uml | 58 +- ...ile.Traceability_customization.profile.uml | 972 +- ...dard_Profile.MagicDraw_Profile.profile.uml | 7838 ++++++++--------- ...andard_Profile.StandardProfile.profile.uml | 12 +- ...ard_Profile.Validation_Profile.profile.uml | 2156 ++--- .../xmi/UML_Standard_Profile.uml | 10 +- .../resources/products/product-services.yml | 2 +- .../resource/ProductServiceResource.java | 55 +- .../restproxy/ProductServiceRESTProxy.java | 83 +- .../resource/ProductServiceResource.java | 58 +- .../spring/test/SpringRESTControllerTest.java | 6 +- .../resources/functions/RESTOperation.ext | 14 +- .../src/main/resources/java/Jackson.xpt | 2 +- 30 files changed, 11973 insertions(+), 12013 deletions(-) diff --git a/jeaf-generator-test-deprecation-report/src-gen/main/resources/Security_Roles_Report.md b/jeaf-generator-test-deprecation-report/src-gen/main/resources/Security_Roles_Report.md index 9b6c075b5..ebdc26c81 100644 --- a/jeaf-generator-test-deprecation-report/src-gen/main/resources/Security_Roles_Report.md +++ b/jeaf-generator-test-deprecation-report/src-gen/main/resources/Security_Roles_Report.md @@ -56,18 +56,6 @@ ## Role `Advanced User` ### Service `AccountingBasicDataService` -| Operation | REST Resource Path | -|------------------|---------------| -| `createResponsibilityType(ResponsibilityType)` | | - -| Operation | REST Resource Path | -|------------------|---------------| -| `createBank(Bank)` | | - -| Operation | REST Resource Path | -|------------------|---------------| -| `createEmployee(Person, ResponsibilityType, Bank)` | | - | Operation | REST Resource Path | |------------------|---------------| | `createAccount(Customer, Person)` | | @@ -104,8 +92,6 @@ |------------------|---------------| | `searchCustomers(CustomerQuery)` | | -### Service `AccountingService` - | Operation | REST Resource Path | |------------------|---------------| | `createResponsibilityType(ResponsibilityType)` | | @@ -118,6 +104,8 @@ |------------------|---------------| | `createEmployee(Person, ResponsibilityType, Bank)` | | +### Service `AccountingService` + | Operation | REST Resource Path | |------------------|---------------| | `createAccount(Customer, Person)` | | @@ -154,6 +142,18 @@ |------------------|---------------| | `searchCustomers(CustomerQuery)` | | +| Operation | REST Resource Path | +|------------------|---------------| +| `createResponsibilityType(ResponsibilityType)` | | + +| Operation | REST Resource Path | +|------------------|---------------| +| `createBank(Bank)` | | + +| Operation | REST Resource Path | +|------------------|---------------| +| `createEmployee(Person, ResponsibilityType, Bank)` | | + ## Role `Customer` ### Service `RESTProductService` diff --git a/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java b/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java index 883736720..ae3284657 100644 --- a/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java +++ b/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java @@ -62,13 +62,14 @@ import com.anaptecs.spring.service.LocalBeanParamType; import com.anaptecs.spring.service.ProductService; -@Path("/products") +@Path("/") @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) public class ProductServiceResource { /** * {@link ProductService#getProducts()} */ + @Path("products/") @GET public void getProducts( @Suspended AsyncResponse pAsyncResponse, @javax.ws.rs.core.Context HttpServletRequest pRequest ) { @@ -103,7 +104,7 @@ public void run( ) { /** * {@link ProductService#getProduct()} */ - @Path("{id}") + @Path("products/{id}") @GET public Response getProduct( @PathParam("id") String pProductID ) { // Delegate request to service. @@ -115,6 +116,7 @@ public Response getProduct( @PathParam("id") String pProductID ) { /** * {@link ProductService#createProduct()} */ + @Path("products/") @POST public Response createProduct( Product pProduct ) { // Delegate request to service. @@ -126,7 +128,7 @@ public Response createProduct( Product pProduct ) { /** * {@link ProductService#getSortiment()} */ - @Path("sortiment/{id}") + @Path("products/sortiment/{id}") @GET public Response getSortiment( @BeanParam Context pContext, @javax.ws.rs.core.Context HttpHeaders pHeaders ) { // Add custom headers. @@ -142,7 +144,7 @@ public Response getSortiment( @BeanParam Context pContext, @javax.ws.rs.core.Con /** * {@link ProductService#createChannelCode()} */ - @Path("ChannelCode") + @Path("products/ChannelCode") @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @@ -156,6 +158,7 @@ public Response createChannelCode( String pChannelCode ) { /** * {@link ProductService#ping()} */ + @Path("products/") @HEAD public Response ping( ) { // Delegate request to service. @@ -167,7 +170,7 @@ public Response ping( ) { /** * {@link ProductService#deprecatedOperation()} */ - @Path("deprecated/operation") + @Path("products/deprecated/operation") @GET @Deprecated public Response deprecatedOperation( ) { @@ -180,7 +183,7 @@ public Response deprecatedOperation( ) { /** * {@link ProductService#deprecatedContext()} */ - @Path("deprecated/context") + @Path("products/deprecated/context") @POST public Response deprecatedContext( @BeanParam DeprecatedContext pContext ) { // Delegate request to service. @@ -192,7 +195,7 @@ public Response deprecatedContext( @BeanParam DeprecatedContext pContext ) { /** * {@link ProductService#deprecatedBeanParam()} */ - @Path("deprecated/beanParams") + @Path("products/deprecated/beanParams") @POST public Response deprecatedBeanParam( @BeanParam BeanParameter pBeanParam ) { // Delegate request to service. @@ -204,7 +207,7 @@ public Response deprecatedBeanParam( @BeanParam BeanParameter pBeanParam ) { /** * {@link ProductService#deprecatedParams()} */ - @Path("deprecated/params") + @Path("products/deprecated/params") @POST @Deprecated public Response deprecatedParams( @HeaderParam("param1") @Deprecated int pParam1 ) { @@ -217,7 +220,7 @@ public Response deprecatedParams( @HeaderParam("param1") @Deprecated int pParam1 /** * {@link ProductService#deprecatedBody()} */ - @Path("deprecated/body") + @Path("products/deprecated/body") @POST public Response deprecatedBody( @DefaultValue("Hello World!") @Deprecated String pBody ) { // Delegate request to service. @@ -229,7 +232,7 @@ public Response deprecatedBody( @DefaultValue("Hello World!") @Deprecated String /** * {@link ProductService#deprectedComplexRequestBody()} */ - @Path("deprecated/complexBody") + @Path("products/deprecated/complexBody") @POST public Response deprectedComplexRequestBody( @Deprecated Product pProduct ) { // Delegate request to service. @@ -241,7 +244,7 @@ public Response deprectedComplexRequestBody( @Deprecated Product pProduct ) { /** * {@link ProductService#deprecatedComplexReturn()} */ - @Path("deprecated/complexReturn") + @Path("products/deprecated/complexReturn") @GET @Deprecated public Response deprecatedComplexReturn( ) { @@ -254,7 +257,7 @@ public Response deprecatedComplexReturn( ) { /** * {@link ProductService#loadSpecificThings()} */ - @Path("specific/{id}") + @Path("products/specific/{id}") @PATCH public Response loadSpecificThings( @BeanParam SpecialContext pContext, @javax.ws.rs.core.Context HttpHeaders pHeaders ) { @@ -271,7 +274,7 @@ public Response loadSpecificThings( @BeanParam SpecialContext pContext, /** * {@link ProductService#createChannelCodeFromObject()} */ - @Path("ChannelCodeObject") + @Path("products/ChannelCodeObject") @POST public Response createChannelCodeFromObject( ChannelCode pChannelCode ) { // Delegate request to service. @@ -283,7 +286,7 @@ public Response createChannelCodeFromObject( ChannelCode pChannelCode ) { /** * {@link ProductService#addCurrencies()} */ - @Path("currencies") + @Path("products/currencies") @POST public Response addCurrencies( List pCurrencies ) { // Delegate request to service. @@ -295,7 +298,7 @@ public Response addCurrencies( List pCurrencies ) { /** * {@link ProductService#isCurrencySupported()} */ - @Path("currencies/valid") + @Path("products/currencies/valid") @POST public Response isCurrencySupported( CurrencyCode pCurrency ) { // Delegate request to service. @@ -307,7 +310,7 @@ public Response isCurrencySupported( CurrencyCode pCurrency ) { /** * {@link ProductService#testCodeTypeUsage()} */ - @Path("codeTypeUsages") + @Path("products/codeTypeUsages") @POST public Response testCodeTypeUsage( StringCodeType pStringCode ) { // Delegate request to service. @@ -319,7 +322,7 @@ public Response testCodeTypeUsage( StringCodeType pStringCode ) { /** * {@link ProductService#testLocalBeanParamType()} */ - @Path("LocalBeanParam") + @Path("products/LocalBeanParam") @GET public Response testLocalBeanParamType( @BeanParam LocalBeanParamType pBeanParam ) { // Delegate request to service. @@ -331,7 +334,7 @@ public Response testLocalBeanParamType( @BeanParam LocalBeanParamType pBeanParam /** * {@link ProductService#testExternalBeanParameterType()} */ - @Path("ExternalBeanParam") + @Path("products/ExternalBeanParam") @GET public Response testExternalBeanParameterType( @BeanParam ParentBeanParamType pParent ) { // Delegate request to service. @@ -343,7 +346,7 @@ public Response testExternalBeanParameterType( @BeanParam ParentBeanParamType pP /** * {@link ProductService#testChildBeanParameter()} */ - @Path("ChildBeanParam") + @Path("products/ChildBeanParam") @GET public Response testChildBeanParameter( @BeanParam ChildBeanParameterType pChild ) { // Delegate request to service. @@ -355,7 +358,7 @@ public Response testChildBeanParameter( @BeanParam ChildBeanParameterType pChild /** * {@link ProductService#testDateQueryParams()} */ - @Path("test-date-query-params/{path}") + @Path("products/test-date-query-params/{path}") @GET public Response testDateQueryParams( @PathParam("path") String pPath, @QueryParam("startTimestamp") OffsetDateTime pStartTimestamp, @QueryParam("startTime") OffsetTime pStartTime, @@ -374,7 +377,7 @@ public Response testDateQueryParams( @PathParam("path") String pPath, /** * {@link ProductService#testDateQueryParamsBean()} */ - @Path("test-date-query-params-beans/{path}") + @Path("products/test-date-query-params-beans/{path}") @GET public Response testDateQueryParamsBean( @PathParam("path") String pPath, @BeanParam DateQueryParamsBean pQueryParams ) { @@ -387,7 +390,7 @@ public Response testDateQueryParamsBean( @PathParam("path") String pPath, /** * {@link ProductService#testDateHeaderParams()} */ - @Path("test-date-header-params/{path}") + @Path("products/test-date-header-params/{path}") @GET public Response testDateHeaderParams( @PathParam("path") String pPath, @HeaderParam("Offset-Date-Time") OffsetDateTime pOffsetDateTime, @@ -406,7 +409,7 @@ public Response testDateHeaderParams( @PathParam("path") String pPath, /** * {@link ProductService#testDateHeaderParamsBean()} */ - @Path("test-date-header-params-beans/{path}") + @Path("products/test-date-header-params-beans/{path}") @GET public Response testDateHeaderParamsBean( @PathParam("path") String pPath, @BeanParam DateHeaderParamsBean pHeaderParams ) { @@ -419,7 +422,7 @@ public Response testDateHeaderParamsBean( @PathParam("path") String pPath, /** * {@link ProductService#testTechnicalHeaderParam()} */ - @Path("technicalHeaderParam") + @Path("products/technicalHeaderParam") @GET public Response testTechnicalHeaderParam( @HeaderParam("Reseller") String pReseller ) { // Delegate request to service. @@ -431,7 +434,7 @@ public Response testTechnicalHeaderParam( @HeaderParam("Reseller") String pResel /** * {@link ProductService#testTechnicalHeaderBean()} */ - @Path("technicalHeaderBeanParam") + @Path("products/technicalHeaderBeanParam") @GET public Response testTechnicalHeaderBean( @BeanParam TechnicalHeaderContext pContext, @javax.ws.rs.core.Context HttpHeaders pHeaders ) { @@ -448,7 +451,7 @@ public Response testTechnicalHeaderBean( @BeanParam TechnicalHeaderContext pCont /** * {@link ProductService#processDataTypes()} */ - @Path("product-codes") + @Path("products/product-codes") @GET public Response processDataTypes( @QueryParam("pCodes") String[] pCodesAsBasicType ) { // Convert basic type parameters into "real" objects. diff --git a/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxyServiceProviderImpl.java b/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxyServiceProviderImpl.java index ad2bdedcc..1eff32104 100644 --- a/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxyServiceProviderImpl.java +++ b/jeaf-generator-test-jeaf-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxyServiceProviderImpl.java @@ -91,7 +91,8 @@ public List getProducts( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); + lPathBuilder.append('/'); + lPathBuilder.append("products/"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. RESTRequest lRequest = lRequestBuilder.build(); @@ -113,8 +114,8 @@ public Product getProduct( String pProductID ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); + lPathBuilder.append("products/"); lPathBuilder.append(pProductID); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. @@ -133,7 +134,8 @@ public boolean createProduct( Product pProduct ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); + lPathBuilder.append('/'); + lPathBuilder.append("products/"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pProduct as request body. lRequestBuilder.setBody(pProduct); @@ -153,9 +155,8 @@ public Sortiment getSortiment( Context pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("sortiment/"); + lPathBuilder.append("products/sortiment/"); lPathBuilder.append(pContext.getPathParam()); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -201,9 +202,8 @@ public ChannelCode createChannelCode( String pChannelCode ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ChannelCode"); + lPathBuilder.append("products/ChannelCode"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pChannelCode as request body. lRequestBuilder.setBody(pChannelCode); @@ -221,7 +221,8 @@ public void ping( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.HEAD, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); + lPathBuilder.append('/'); + lPathBuilder.append("products/"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request. RESTRequest lRequest = lRequestBuilder.build(); @@ -238,9 +239,8 @@ public String deprecatedOperation( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/operation"); + lPathBuilder.append("products/deprecated/operation"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. RESTRequest lRequest = lRequestBuilder.build(); @@ -258,9 +258,8 @@ public String deprecatedContext( DeprecatedContext pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/context"); + lPathBuilder.append("products/deprecated/context"); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request if (pContext != null) { @@ -297,9 +296,8 @@ public void deprecatedBeanParam( BeanParameter pBeanParam ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/beanParams"); + lPathBuilder.append("products/deprecated/beanParams"); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request if (pBeanParam != null) { @@ -335,9 +333,8 @@ public String deprecatedParams( @Deprecated int pParam1 ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/params"); + lPathBuilder.append("products/deprecated/params"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) lRequestBuilder.setHeader("param1", pParam1); @@ -358,9 +355,8 @@ public String deprecatedBody( @Deprecated String pBody ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/body"); + lPathBuilder.append("products/deprecated/body"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pBody as request body. lRequestBuilder.setBody(pBody); @@ -383,9 +379,8 @@ public void deprectedComplexRequestBody( @Deprecated Product pProduct ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/complexBody"); + lPathBuilder.append("products/deprecated/complexBody"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pProduct as request body. lRequestBuilder.setBody(pProduct); @@ -405,9 +400,8 @@ public Product deprecatedComplexReturn( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/complexReturn"); + lPathBuilder.append("products/deprecated/complexReturn"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. RESTRequest lRequest = lRequestBuilder.build(); @@ -424,9 +418,8 @@ public void loadSpecificThings( SpecialContext pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.PATCH, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("specific/"); + lPathBuilder.append("products/specific/"); lPathBuilder.append(pContext.getPathParam()); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -478,9 +471,8 @@ public ChannelCode createChannelCodeFromObject( ChannelCode pChannelCode ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ChannelCodeObject"); + lPathBuilder.append("products/ChannelCodeObject"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pChannelCode as request body. lRequestBuilder.setBody(pChannelCode); @@ -500,9 +492,8 @@ public List addCurrencies( List pCurrencies ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("currencies"); + lPathBuilder.append("products/currencies"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pCurrencies as request body. lRequestBuilder.setBody(pCurrencies); @@ -526,9 +517,8 @@ public CurrencyCode isCurrencySupported( CurrencyCode pCurrency ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("currencies/valid"); + lPathBuilder.append("products/currencies/valid"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pCurrency as request body. lRequestBuilder.setBody(pCurrency); @@ -548,9 +538,8 @@ public IntegerCodeType testCodeTypeUsage( StringCodeType pStringCode ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("codeTypeUsages"); + lPathBuilder.append("products/codeTypeUsages"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pStringCode as request body. lRequestBuilder.setBody(pStringCode); @@ -570,9 +559,8 @@ public String testLocalBeanParamType( LocalBeanParamType pBeanParam ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("LocalBeanParam"); + lPathBuilder.append("products/LocalBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pBeanParam != null) { @@ -599,9 +587,8 @@ public String testExternalBeanParameterType( ParentBeanParamType pParent ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ExternalBeanParam"); + lPathBuilder.append("products/ExternalBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pParent != null) { @@ -628,9 +615,8 @@ public String testChildBeanParameter( ChildBeanParameterType pChild ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ChildBeanParam"); + lPathBuilder.append("products/ChildBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pChild != null) { @@ -671,9 +657,8 @@ public void testDateQueryParams( String pPath, OffsetDateTime pStartTimestamp, O RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-query-params/"); + lPathBuilder.append("products/test-date-query-params/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -732,9 +717,8 @@ public void testDateQueryParamsBean( String pPath, DateQueryParamsBean pQueryPar RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-query-params-beans/"); + lPathBuilder.append("products/test-date-query-params-beans/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -806,9 +790,8 @@ public void testDateHeaderParams( String pPath, OffsetDateTime pOffsetDateTime, RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-header-params/"); + lPathBuilder.append("products/test-date-header-params/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) @@ -867,9 +850,8 @@ public void testDateHeaderParamsBean( String pPath, DateHeaderParamsBean pHeader RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-header-params-beans/"); + lPathBuilder.append("products/test-date-header-params-beans/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) @@ -931,9 +913,8 @@ public String testTechnicalHeaderParam( String pReseller ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("technicalHeaderParam"); + lPathBuilder.append("products/technicalHeaderParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pReseller != null) { @@ -955,9 +936,8 @@ public String testTechnicalHeaderBean( TechnicalHeaderContext pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("technicalHeaderBeanParam"); + lPathBuilder.append("products/technicalHeaderBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pContext != null) { @@ -985,9 +965,8 @@ public String processDataTypes( List pCodes ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("product-codes"); + lPathBuilder.append("products/product-codes"); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request if (pCodes != null) { diff --git a/jeaf-generator-test-model/xmi/JEAF_Services_API.uml b/jeaf-generator-test-model/xmi/JEAF_Services_API.uml index bfb48e251..97bc8b094 100644 --- a/jeaf-generator-test-model/xmi/JEAF_Services_API.uml +++ b/jeaf-generator-test-model/xmi/JEAF_Services_API.uml @@ -1,5 +1,5 @@ - + @@ -3129,8 +3129,8 @@ - - + + @@ -3709,172 +3709,172 @@ - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jeaf-generator-test-model/xmi/JEAF_Test.uml b/jeaf-generator-test-model/xmi/JEAF_Test.uml index 875cf15c6..bcc593985 100644 --- a/jeaf-generator-test-model/xmi/JEAF_Test.uml +++ b/jeaf-generator-test-model/xmi/JEAF_Test.uml @@ -1,6 +1,6 @@ - - + + @@ -11,29 +11,29 @@ - - - + + + + + + - - - - - + + - - + + @@ -66,8 +66,8 @@ - - + + @@ -494,7 +494,7 @@ - + @@ -507,7 +507,7 @@ - + @@ -541,7 +541,7 @@ - + @@ -683,7 +683,7 @@ - + @@ -843,7 +843,7 @@ - + @@ -2441,7 +2441,7 @@ - + @@ -3074,7 +3074,7 @@ - + @@ -5058,7 +5058,7 @@ - + @@ -5100,7 +5100,7 @@ - + @@ -5108,7 +5108,7 @@ - + @@ -5127,7 +5127,7 @@ - + @@ -5362,7 +5362,7 @@ - + @@ -5754,7 +5754,7 @@ - + @@ -5811,7 +5811,7 @@ - + @@ -6360,7 +6360,7 @@ - + @@ -7439,7 +7439,7 @@ - + @@ -8013,7 +8013,7 @@ - + @@ -8050,7 +8050,7 @@ - + @@ -8083,7 +8083,7 @@ - + @@ -9246,2329 +9246,2329 @@ - - - + + + - + - - + + - - - + + + - + - - - + + + - + - - + + - - + + - - - - - - - - + + - - - + + + - + - - - + + + - + - - - + + + - + - - - + + + - + + + + + + + - + This is my TODO. - + This is my TODO. - + This is something I always wanted to say, but nobody listens ;-) - + https://www.jeaf-generator.io - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SAVE-UPDATE REFRESH - + NONE - - - - + + + + NONE - - + + NONE - - - + + + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - + NONE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + APPLICATION_XML APPLICATION_JSON APPLICATION_XML APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - - + + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_JSON - + APPLICATION_JSON APPLICATION_XML APPLICATION_JSON - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + POST - + GET - + GET - + GET - + GET - + PUT - + GET - + GET - + GET - + PATCH - + APPLICATION_JSON APPLICATION_JSON - + GET - + POST - + GET - + GET - + POST - + GET - + GET - + GET - + GET - + GET - + GET - + PATCH - + GET - + GET - + GET - + GET - + POST - + GET - + POST - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + GET - + HEAD - + POST - + POST - + GET - + POST - + POST - + GET - + POST - + GET - + GET - + GET - + GET - + POST - + GET - + GET - + POST - + POST APPLICATION_JSON APPLICATION_JSON - + GET - + POST - + GET - + POST - + PATCH - + POST - + POST - + HEAD - + GET - + POST - + POST - + POST - + POST - + GET - + POST - + GET - + GET - + POST - + GET - + GET - + DELETE - + GET - + GET - + GET - + GET - + GET - + POST - + GET - + POST - + GET - + GET - + POST - + HEAD - + POST - + POST - + PATCH - + GET - + POST - + GET - + GET - + GET - + GET - + POST - + GET - + GET - + POST - + GET - + POST - + POST - + POST APPLICATION_XML APPLICATION_XML - + GET - + GET - + POST - + POST - + GET APPLICATION_JSON - + POST - + POST - + PUT APPLICATION_OCTET_STREAM - + GET - + GET - + GET - + GET - + GET - + GET - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ["CHF", "EUR", "USD"] - + MOBILE_APP - + 1234-345 - + true - + true - + MOBILE_APP - + CHF - + 1234-345 - + en - + 1234-345 - + https://www.company.com/products/1345-345 - + en - + 12:07 - + MOBILE_APP - + MOBILE_APP - + ["CHF", "EUR", "USD"] - + true - + CHF - + en - + en - + MOBILE_APP WEBSHOP - + https://www.company.com/products/1345-345 - + 12:07 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 400_BAD_REQUEST - + 400_BAD_REQUEST 403_FORBIDDEN 500_INTERNAL_SERVER_ERROR - + 204_NO_CONTENT - + 409_CONFLICT PUT PATCH DELETE - + 400_BAD_REQUEST - + 400_BAD_REQUEST 403_FORBIDDEN 500_INTERNAL_SERVER_ERROR - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CASE_INSENSITIVE MULTILINE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jeaf-generator-test-model/xmi/JMM.profile.uml b/jeaf-generator-test-model/xmi/JMM.profile.uml index 87c47a532..83e9ee939 100644 --- a/jeaf-generator-test-model/xmi/JMM.profile.uml +++ b/jeaf-generator-test-model/xmi/JMM.profile.uml @@ -1,1418 +1,1418 @@ - + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - + - - - + + + - - - + + + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - + - + - - - + + + - + - + - + - + - + - + - + - + - - + + - - - - - - + + + + + + - - - + + + - + - + - + - + - + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - + - - + + - - - - - - + + + + + + - - - + + + - + - + - + - - - + + + - - + + - + - + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - + + + + + - + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - + - + - - - + + + - - - + + + - + - + - + - + - + - + - + - + - - + + - - - + + + - - - + + + - + - + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - - - + + + + + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - - - + + + - + - - - + + + - + - + - - - + + + - + - + - - - + + + - + - + - + - - - + + + - + - + - - - + + + - + - + - - - + + + - + - + - + - - - + + + - + - - - + + + - + - + - - - + + + - + - + - + - - - - - + + + + + - - - + + + - + - + - - - + + + - - - + + + - - - + + + - + - + - - - + + + - + - + - - - + + + - - - + + + - + - + - - - + + + - - + + - - + + - + - + - - - - - - + + + + + + - - - - - + + + + + - - - + + + - - + + - + - + - - - - - - + + + + + + - - - + + + - + - + - - - + + + - + - - - + + + - - - + + + - - - + + + - + - + - - - + + + - + - - - + + + - + - + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - + - + - - - + + + - + - - - + + + - + - + - + - - - + + + - - - + + + - + - - + + - + - - - - - - + + + + + + - - - - - + + + + + - - + + - - + + - - - - - + + + + + - - + + - + - + - - - - - + + + + + - - + + - + - - - - - + + + + + - - + + - + - - - - - + + + + + - - + + - + - + - - - - - + + + + + - - + + - + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - + + - + - + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - + - + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - - - - - + + + + + - - + + - + - + - - - + + + - + - + @@ -2358,7 +2358,7 @@ - + @@ -2960,7 +2960,7 @@ - + @@ -3166,7 +3166,7 @@ - + @@ -3759,74 +3759,74 @@ - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jeaf-generator-test-model/xmi/Java_5_0_Profile.uml b/jeaf-generator-test-model/xmi/Java_5_0_Profile.uml index 895376430..1496a7140 100644 --- a/jeaf-generator-test-model/xmi/Java_5_0_Profile.uml +++ b/jeaf-generator-test-model/xmi/Java_5_0_Profile.uml @@ -1,5 +1,5 @@ - + @@ -77,7 +77,7 @@ - + @@ -142,7 +142,7 @@ - + @@ -191,7 +191,7 @@ - + @@ -316,7 +316,7 @@ - + @@ -348,13 +348,13 @@ - + - + @@ -370,7 +370,7 @@ - + @@ -438,7 +438,7 @@ - + @@ -457,7 +457,7 @@ - + @@ -554,7 +554,7 @@ - + @@ -1234,7 +1234,7 @@ - + @@ -1491,7 +1491,7 @@ - + @@ -1703,7 +1703,7 @@ - + @@ -2286,7 +2286,7 @@ - + @@ -2373,7 +2373,7 @@ - + @@ -2397,7 +2397,7 @@ - + @@ -2481,12 +2481,12 @@ - + - + @@ -3039,7 +3039,7 @@ - + @@ -3060,14 +3060,14 @@ - + - + @@ -3122,7 +3122,7 @@ - + @@ -3159,7 +3159,7 @@ - + @@ -3207,7 +3207,7 @@ - + @@ -3283,7 +3283,7 @@ - + @@ -3359,7 +3359,7 @@ - + @@ -3413,7 +3413,7 @@ - + @@ -3422,7 +3422,7 @@ - + @@ -3512,7 +3512,7 @@ - + @@ -3524,14 +3524,14 @@ - + - + @@ -3552,7 +3552,7 @@ - + @@ -3575,7 +3575,7 @@ - + @@ -3590,12 +3590,12 @@ - + - + @@ -3770,7 +3770,7 @@ - + @@ -3848,7 +3848,7 @@ - + @@ -4055,7 +4055,7 @@ - + @@ -4103,7 +4103,7 @@ - + @@ -4133,7 +4133,7 @@ - + @@ -4253,7 +4253,7 @@ - + @@ -4289,7 +4289,7 @@ - + @@ -4321,7 +4321,7 @@ - + @@ -4409,7 +4409,7 @@ - + @@ -4484,7 +4484,7 @@ - + @@ -4550,7 +4550,7 @@ - + @@ -4680,7 +4680,7 @@ - + @@ -4708,7 +4708,7 @@ - + @@ -4903,7 +4903,7 @@ - + @@ -5003,7 +5003,7 @@ - + @@ -5036,7 +5036,7 @@ - + @@ -5411,7 +5411,7 @@ - + @@ -5468,7 +5468,7 @@ - + @@ -5620,7 +5620,7 @@ - + @@ -5698,7 +5698,7 @@ - + @@ -6159,7 +6159,7 @@ - + @@ -6307,7 +6307,7 @@ - + @@ -6374,7 +6374,7 @@ - + @@ -6486,7 +6486,7 @@ - + @@ -6649,7 +6649,7 @@ - + @@ -6783,7 +6783,7 @@ - + @@ -6845,7 +6845,7 @@ - + @@ -6943,7 +6943,7 @@ - + @@ -6991,7 +6991,7 @@ - + @@ -7012,7 +7012,7 @@ - + @@ -7043,7 +7043,7 @@ - + @@ -7080,7 +7080,7 @@ - + @@ -7175,7 +7175,7 @@ - + @@ -7228,7 +7228,7 @@ - + @@ -7239,7 +7239,7 @@ - + @@ -7252,7 +7252,7 @@ - + @@ -7262,7 +7262,7 @@ - + @@ -7273,7 +7273,7 @@ - + @@ -7304,7 +7304,7 @@ - + @@ -7341,7 +7341,7 @@ - + @@ -7482,7 +7482,7 @@ - + @@ -7711,7 +7711,7 @@ - + @@ -7972,7 +7972,7 @@ - + @@ -8010,7 +8010,7 @@ - + @@ -8312,7 +8312,7 @@ - + @@ -8360,7 +8360,7 @@ - + @@ -8514,7 +8514,7 @@ - + @@ -8578,7 +8578,7 @@ - + @@ -8599,7 +8599,7 @@ - + @@ -8645,7 +8645,7 @@ - + @@ -8694,7 +8694,7 @@ - + @@ -8818,7 +8818,7 @@ - + @@ -9734,7 +9734,7 @@ - + @@ -9761,7 +9761,7 @@ - + @@ -9815,7 +9815,7 @@ - + @@ -9830,7 +9830,7 @@ - + @@ -9849,7 +9849,7 @@ - + @@ -10162,7 +10162,7 @@ - + @@ -10283,7 +10283,7 @@ - + @@ -10295,7 +10295,7 @@ - + @@ -10320,7 +10320,7 @@ - + @@ -10332,7 +10332,7 @@ - + @@ -10347,7 +10347,7 @@ - + @@ -10361,13 +10361,13 @@ - + - + @@ -10443,7 +10443,7 @@ - + @@ -10454,7 +10454,7 @@ - + @@ -10488,12 +10488,12 @@ - + - + @@ -10508,7 +10508,7 @@ - + @@ -10518,13 +10518,13 @@ - + - + @@ -10545,7 +10545,7 @@ - + @@ -10581,7 +10581,7 @@ - + @@ -10624,7 +10624,7 @@ - + @@ -10656,7 +10656,7 @@ - + @@ -10673,7 +10673,7 @@ - + @@ -10691,7 +10691,7 @@ - + @@ -10733,7 +10733,7 @@ - + @@ -10760,7 +10760,7 @@ - + @@ -10826,7 +10826,7 @@ - + @@ -10844,7 +10844,7 @@ - + @@ -10866,14 +10866,14 @@ - + - + @@ -10884,7 +10884,7 @@ - + @@ -10910,7 +10910,7 @@ - + @@ -10942,7 +10942,7 @@ - + @@ -10985,7 +10985,7 @@ - + @@ -11145,7 +11145,7 @@ - + @@ -11169,7 +11169,7 @@ - + @@ -11199,7 +11199,7 @@ - + @@ -11291,7 +11291,7 @@ - + @@ -11314,12 +11314,12 @@ - + - + @@ -11358,7 +11358,7 @@ - + @@ -11492,7 +11492,7 @@ - + @@ -11612,7 +11612,7 @@ - + @@ -11628,7 +11628,7 @@ - + @@ -11640,12 +11640,12 @@ - + - + @@ -11722,7 +11722,7 @@ - + @@ -11741,7 +11741,7 @@ - + @@ -11766,7 +11766,7 @@ - + @@ -11840,7 +11840,7 @@ - + @@ -11856,7 +11856,7 @@ - + @@ -11980,7 +11980,7 @@ - + @@ -12047,7 +12047,7 @@ - + @@ -12091,7 +12091,7 @@ - + @@ -12131,7 +12131,7 @@ - + @@ -12151,7 +12151,7 @@ - + @@ -12223,7 +12223,7 @@ - + @@ -12252,13 +12252,13 @@ - + - + @@ -12289,7 +12289,7 @@ - + @@ -12362,7 +12362,7 @@ - + @@ -12388,7 +12388,7 @@ - + @@ -12406,7 +12406,7 @@ - + @@ -12475,7 +12475,7 @@ - + @@ -12489,7 +12489,7 @@ - + @@ -12529,7 +12529,7 @@ - + @@ -12551,7 +12551,7 @@ - + @@ -12565,7 +12565,7 @@ - + @@ -12667,7 +12667,7 @@ - + @@ -12802,7 +12802,7 @@ - + @@ -12870,12 +12870,12 @@ - + - + @@ -12923,13 +12923,13 @@ - + - + @@ -12980,7 +12980,7 @@ - + @@ -12991,7 +12991,7 @@ - + @@ -13011,7 +13011,7 @@ - + @@ -13036,14 +13036,14 @@ - + - + @@ -13066,7 +13066,7 @@ - + @@ -13094,7 +13094,7 @@ - + @@ -13183,12 +13183,12 @@ - + - + @@ -13229,14 +13229,14 @@ - + - + @@ -13250,7 +13250,7 @@ - + @@ -13260,11 +13260,11 @@ - + - + @@ -13290,7 +13290,7 @@ - + @@ -13335,7 +13335,7 @@ - + @@ -13364,7 +13364,7 @@ - + @@ -13379,7 +13379,7 @@ - + @@ -13388,7 +13388,7 @@ - + @@ -13419,7 +13419,7 @@ - + @@ -13514,7 +13514,7 @@ - + @@ -13537,30 +13537,30 @@ - + - + - + - + - + @@ -13602,7 +13602,7 @@ - + @@ -13612,7 +13612,7 @@ - + @@ -13978,7 +13978,7 @@ - + @@ -13995,7 +13995,7 @@ - + @@ -14135,7 +14135,7 @@ - + @@ -14405,7 +14405,7 @@ - + @@ -14441,7 +14441,7 @@ - + @@ -14554,7 +14554,7 @@ - + @@ -14581,12 +14581,12 @@ - + - + @@ -14596,7 +14596,7 @@ - + @@ -14609,7 +14609,7 @@ - + @@ -14696,7 +14696,7 @@ - + @@ -14720,7 +14720,7 @@ - + @@ -14828,7 +14828,7 @@ - + @@ -14908,7 +14908,7 @@ - + @@ -14983,7 +14983,7 @@ - + @@ -14993,7 +14993,7 @@ - + @@ -15073,7 +15073,7 @@ - + @@ -15091,7 +15091,7 @@ - + @@ -15252,7 +15252,7 @@ - + @@ -15263,7 +15263,7 @@ - + @@ -15494,7 +15494,7 @@ - + @@ -15568,7 +15568,7 @@ - + @@ -15590,7 +15590,7 @@ - + @@ -15622,12 +15622,12 @@ - + - + @@ -15683,7 +15683,7 @@ - + @@ -15741,7 +15741,7 @@ - + @@ -15808,7 +15808,7 @@ - + @@ -15885,7 +15885,7 @@ - + @@ -15907,7 +15907,7 @@ - + @@ -15966,7 +15966,7 @@ - + @@ -15985,7 +15985,7 @@ - + @@ -16053,7 +16053,7 @@ - + @@ -16101,7 +16101,7 @@ - + @@ -16118,7 +16118,7 @@ - + @@ -16169,14 +16169,14 @@ - + - + @@ -16198,7 +16198,7 @@ - + @@ -16258,7 +16258,7 @@ - + @@ -16273,7 +16273,7 @@ - + @@ -16281,12 +16281,12 @@ - + - + @@ -16296,12 +16296,12 @@ - + - + @@ -16335,7 +16335,7 @@ - + @@ -16397,7 +16397,7 @@ - + @@ -16449,7 +16449,7 @@ - + @@ -16457,7 +16457,7 @@ - + @@ -16496,7 +16496,7 @@ - + @@ -16508,7 +16508,7 @@ - + @@ -16614,7 +16614,7 @@ - + @@ -16658,12 +16658,12 @@ - + - + @@ -16678,7 +16678,7 @@ - + @@ -16737,7 +16737,7 @@ - + @@ -16986,7 +16986,7 @@ - + @@ -17256,7 +17256,7 @@ - + @@ -17331,7 +17331,7 @@ - + @@ -17394,7 +17394,7 @@ - + @@ -17511,53 +17511,53 @@ - + - + - + - + - + - + - + - + - + - + @@ -17577,17 +17577,17 @@ - + - + - + @@ -17596,7 +17596,7 @@ - + @@ -17613,27 +17613,27 @@ - + - + - + - + - + @@ -17648,13 +17648,13 @@ - + - + @@ -17754,7 +17754,7 @@ - + @@ -17817,7 +17817,7 @@ - + @@ -17847,7 +17847,7 @@ - + @@ -18017,7 +18017,7 @@ - + @@ -18028,12 +18028,12 @@ - + - + @@ -18072,7 +18072,7 @@ - + @@ -18103,7 +18103,7 @@ - + @@ -18926,285 +18926,285 @@ - + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Deprecated - + @Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) - + @Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) - + @Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) - + @Documented @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.ANNOTATION_TYPE) - + @Target(ElementType.METHOD) @Retention(RetentionPolicy.SOURCE) - + @Target({TYPE,FIELD,METHOD,PARAMETER,CONSTRUCTOR,LOCAL_VARIABLE}) @Retention(RetentionPolicy.SOURCE) - + @Documented @Retention(RetentionPolicy.RUNTIME) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jeaf-generator-test-model/xmi/Java_Extensions.uml b/jeaf-generator-test-model/xmi/Java_Extensions.uml index 9ff2a374f..9d76afc27 100644 --- a/jeaf-generator-test-model/xmi/Java_Extensions.uml +++ b/jeaf-generator-test-model/xmi/Java_Extensions.uml @@ -20,11 +20,11 @@ - + - + diff --git a/jeaf-generator-test-model/xmi/Java_Mail_API.uml b/jeaf-generator-test-model/xmi/Java_Mail_API.uml index c994be8f7..c94062f39 100644 --- a/jeaf-generator-test-model/xmi/Java_Mail_API.uml +++ b/jeaf-generator-test-model/xmi/Java_Mail_API.uml @@ -1,5 +1,5 @@ - + @@ -6826,730 +6826,730 @@ - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jeaf-generator-test-model/xmi/Java_Profile.uml b/jeaf-generator-test-model/xmi/Java_Profile.uml index a0e01e33f..fa7333e82 100644 --- a/jeaf-generator-test-model/xmi/Java_Profile.uml +++ b/jeaf-generator-test-model/xmi/Java_Profile.uml @@ -1,5 +1,5 @@ - + @@ -8,11 +8,11 @@ - - + + - + diff --git a/jeaf-generator-test-model/xmi/Java_constraints.uml b/jeaf-generator-test-model/xmi/Java_constraints.uml index 9ba91b13b..ced17d359 100644 --- a/jeaf-generator-test-model/xmi/Java_constraints.uml +++ b/jeaf-generator-test-model/xmi/Java_constraints.uml @@ -1,5 +1,5 @@ - + @@ -50,29 +50,29 @@ - - + + - - + + - - - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/jeaf-generator-test-model/xmi/TestProfile.profile.uml b/jeaf-generator-test-model/xmi/TestProfile.profile.uml index 7bfdf8427..f3f2c9714 100644 --- a/jeaf-generator-test-model/xmi/TestProfile.profile.uml +++ b/jeaf-generator-test-model/xmi/TestProfile.profile.uml @@ -1,57 +1,57 @@ - + - - - - - - - + + + + + + + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - - - - + + + + - - - - + + + + @@ -116,20 +116,20 @@ - + - - + + - - + + com.anaptecs.jeaf.accounting.validation.MyCustomConstraintValidator com.anaptecs.jeaf.accounting.validation.BankConstraintValidator diff --git a/jeaf-generator-test-model/xmi/UML_Profile_for_Java.deployment.profile.uml b/jeaf-generator-test-model/xmi/UML_Profile_for_Java.deployment.profile.uml index 2924e2819..ffbaa8a35 100644 --- a/jeaf-generator-test-model/xmi/UML_Profile_for_Java.deployment.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Profile_for_Java.deployment.profile.uml @@ -1,51 +1,51 @@ - - - - - + + + + + - - - + + + - - - + + + - + - - - + + + - - - - - + + + + + - + - - + + - + diff --git a/jeaf-generator-test-model/xmi/UML_Profile_for_Java.profile.uml b/jeaf-generator-test-model/xmi/UML_Profile_for_Java.profile.uml index 722794e89..06062fd39 100644 --- a/jeaf-generator-test-model/xmi/UML_Profile_for_Java.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Profile_for_Java.profile.uml @@ -1,177 +1,177 @@ - + - - - - - - - + + + + + + + - + - - - + + + - + - - - + + + - + - - + + - - - + + + - + - - - + + + - + - - - + + + - - - - + + + + - - - + + + - + - + - - - + + + - + - - - - + + + + - - - + + + - - - + + + - + - + - + - - - - - + + + + + - - + + - + - + - - - + + + - + - - - + + + - - - - - + + + + + - + - - - + + + - + - + - + @@ -504,18 +504,18 @@ - + - - + + - - + + diff --git a/jeaf-generator-test-model/xmi/UML_Profile_for_Java.statements.profile.uml b/jeaf-generator-test-model/xmi/UML_Profile_for_Java.statements.profile.uml index cbcd71770..d151fa965 100644 --- a/jeaf-generator-test-model/xmi/UML_Profile_for_Java.statements.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Profile_for_Java.statements.profile.uml @@ -1,88 +1,88 @@ - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.Dependency_Matrix_Profile.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.Dependency_Matrix_Profile.profile.uml index 812f26441..c99ed3911 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.Dependency_Matrix_Profile.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.Dependency_Matrix_Profile.profile.uml @@ -1,183 +1,183 @@ - + - - - - - - + + + + + + - - - - - + + + + + - - + + - + - + - + - + - + - - - + + + - + - + - + - + - - - + + + - + - + - + - + - - + + - + - - - - + + + + - - - - - - + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - -
+ +
- -
+ +
@@ -188,1177 +188,1177 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- - + + - - + + - - + + columnCollapsedNodes columnElementType columnHeaderHeight @@ -1374,7 +1374,7 @@ includeSubtypesOfColumnTypes includeCustomTypesOfColumnTypes - + removedRowElements rowCollapsedNodes rowElementType @@ -1389,7 +1389,7 @@ includeCustomTypesOfRowTypes includeSubtypesOfRowTypes - + <html><head><title>SPF</title></head><body><p>name</p></body></html> <html><head><title>HNF</title></head><body><p>MANAGE_NAVIGATION</p></body></html> <html><head><title>HPF</title></head><body><p>columnScopeDefined</p></body></html> diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.DSL_Customization.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.DSL_Customization.profile.uml index 52c0e9f11..b6f771ae5 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.DSL_Customization.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.DSL_Customization.profile.uml @@ -1,602 +1,602 @@ - + - - - - - - + + + + + + - - - - - - - + + + + + + + - - - + + + - + - + - - + + - + - - - + + + - + - - - - - + + + + + - + - - + + - + - - - + + + - - + + - + - - + + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - - - + + + - - - + + + - + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - - + + + - + - + - - - + + + - + - + - + - + - + - - - + + + - + - + - + - - - - - + + + + + - - + + - - - + + + - - - + + + - - + + - - + + - - - + + + - + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - + + + - + - + - + - - - + + + - - + + - - + + - - - - - - + + + + + + - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - + - - + + - - - + + + - - - + + + - - - + + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - - + + + - + - - - + + + - - - + + + - + - - - + + + - + - + - - - - - + + + + + - - - + + + - - + + - - - + + + - + - + - - - + + + - + - - + + - + - - + + - - + + - + - - + + - - - - - + + + + + - - - - - - - - + + + + + + + + - -
+ +
- -
+ +
@@ -607,2375 +607,2375 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
StructuredExpression <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <unionExpressionSpecification xmlns="http://www.nomagic.com/schemas/MagicDraw/StructuredExpression/2013"> <taggedValues> <entry key="name"> <value>Body</value> </entry> <entry key="ROOT_UNION"> <value>true</value> </entry> </taggedValues> <value xsi:type="callExpressionSpecification" includeCustomTypes="true" includeSubtypes="false" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <taggedValues> <entry key="name"> <value>Timestamp</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="makeInlineExpressionSpecification" language="Groovy"> <parameter name="Context" type="com.nomagic.uml2.ext.magicdraw.classes.mdkernel.Element" ordered="false" unique="false" multiple="false"/> <body>new Date()</body> </expression> </value> </unionExpressionSpecification> - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -2984,287 +2984,287 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- - + + - + - - - - - + + + + + qualifier name type - - - + + + query additionalElements excludedElements - + specificElements specification adornedProperties - + diagramsByCondition specificDiagrams - + ownedRule name adornment @@ -3272,20 +3272,20 @@ specification - + ownedAttribute name - + additionalContent subElementContentsIncluded - + defaultShapeSize symbolStandardExpertConfiguration propertiesDisplayedInCompartments - + checkSpelling helpID inShortcutMenu @@ -3296,32 +3296,32 @@ standardExpertConfiguration usedUMLProperties - + hiddenOwnedDiagrams hiddenOwnedTypes possibleOwners suggestedOwnedDiagrams suggestedOwnedTypes - + abbreviation category keyword representationText - + applyToSource applyToTarget superTypes - + allowedDragAndDrops allowedRelationships disallowedRelationships typesForSource typesForTarget - + customizationTarget doNotSuggestAsType doNotSuggestNameAutoCompletion @@ -3329,7 +3329,7 @@ preferredMetatype quickApplyingFor - + contextElement cutElementNames depth @@ -3363,70 +3363,70 @@ expandedElements includeCustomTypes - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <callExpressionSpecification includeCustomTypes="true" includeSubtypes="false" xmlns="http://www.nomagic.com/schemas/MagicDraw/StructuredExpression/2013"> <taggedValues> <entry key="name"> <value>mount</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> <expression xsi:type="dslRelationExpressionSpecification" stereotype="b6e3e12f-ab26-438c-8c46-a2d0ba173f27" direction="DIRECT" includeCustomTypes="true" includeSubtypes="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> </callExpressionSpecification> - + <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <callExpressionSpecification includeCustomTypes="false" includeSubtypes="true" xmlns="http://www.nomagic.com/schemas/MagicDraw/StructuredExpression/2013"> <taggedValues> <entry key="listenerConfigProvider"> <value>com.nomagic.magicdraw.derivedproperty.impl.SmartPackageSmartListenerConfigurationProvider</value> </entry> <entry key="name"> <value>Dynamic Smart Package Content</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> <argument xsi:type="callExpressionSpecification" includeCustomTypes="false" includeSubtypes="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="tagExpressionSpecification" direction="DIRECT" includeCustomTypes="false" includeSubtypes="true"> <tag xsi:type="tag" tagId="823cf444-01f3-4bc2-9a09-99d85e7e27b6" derived="false"> <property stereotypeId="f7c227bc-93c1-41e6-971a-249bb86a972b"> <propertyValue xsi:type="tagId" value="823cf444-01f3-4bc2-9a09-99d85e7e27b6"/> </property> </tag> </expression> </argument> <argument xsi:type="callExpressionSpecification" includeCustomTypes="false" includeSubtypes="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="tagExpressionSpecification" direction="DIRECT" includeCustomTypes="false" includeSubtypes="true"> <tag xsi:type="tag" tagId="7df09286-8dd8-45f5-84ef-449a0188c880" derived="false"> <property stereotypeId="f7c227bc-93c1-41e6-971a-249bb86a972b"> <propertyValue xsi:type="tagId" value="7df09286-8dd8-45f5-84ef-449a0188c880"/> </property> </tag> </expression> </argument> <argument xsi:type="interpretStringExpressionSpecification" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <string xsi:type="callExpressionSpecification" includeCustomTypes="true" includeSubtypes="false"> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="tagExpressionSpecification" direction="DIRECT" includeCustomTypes="false" includeSubtypes="true"> <tag xsi:type="tag" tagId="b5aad570-befb-4846-b16b-56acf32e8fa2" derived="false"> <property stereotypeId="f7c227bc-93c1-41e6-971a-249bb86a972b"> <propertyValue xsi:type="tagId" value="b5aad570-befb-4846-b16b-56acf32e8fa2"/> </property> </tag> </expression> </string> </argument> <argument xsi:type="callExpressionSpecification" includeCustomTypes="false" includeSubtypes="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="tagExpressionSpecification" direction="DIRECT" includeCustomTypes="false" includeSubtypes="true"> <tag xsi:type="tag" tagId="ab381fd7-19cb-4646-a910-6181eb5bdade" derived="false"> <property stereotypeId="f7c227bc-93c1-41e6-971a-249bb86a972b"> <propertyValue xsi:type="tagId" value="ab381fd7-19cb-4646-a910-6181eb5bdade"/> </property> </tag> </expression> </argument> <argument xsi:type="callExpressionSpecification" includeCustomTypes="false" includeSubtypes="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="tagExpressionSpecification" direction="DIRECT" includeCustomTypes="false" includeSubtypes="true"> <tag xsi:type="tag" tagId="0b086d63-8fc8-4674-ab34-18e5b43e31e3" derived="false"> <property stereotypeId="f7c227bc-93c1-41e6-971a-249bb86a972b"> <propertyValue xsi:type="tagId" value="0b086d63-8fc8-4674-ab34-18e5b43e31e3"/> </property> </tag> </expression> </argument> <expression xsi:type="makeInlineExpressionSpecification" language="JavaScript Rhino" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <parameter name="self" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <parameter name="additionalElements" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <parameter name="excludedElements" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <parameter name="query" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <parameter name="frozen" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <parameter name="frozenContents" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <body>//Smart Package script wrapper var CollectionsAndFiles = new JavaImporter( com.nomagic.magicdraw.expressions, com.nomagic.magicdraw.expressions.evaluation ); with(CollectionsAndFiles) { var rezult = new java.util.HashSet(); var isFrozen = false; var returnEmpty = false; if(frozen){ if(!frozen.isEmpty()){ isFrozen = frozen.get(0); } } if (isFrozen == true) { rezult.addAll(frozenContents); } else { if (query) { var project = com.nomagic.magicdraw.core.Project.getProject(self); var contextComp = new ExpressionContext(project); contextComp.add(ExpressionContext.CONTEXT_METACLASS, com.nomagic.uml2.ext.jmi.helpers.StereotypesHelper.getUML2MetaClassByName(project, self.getClassType().getSimpleName())); contextComp.add(ExpressionContext.THIS, self); var compiled = ExpressionCompiler.compile(query, contextComp); var contextCall = new ExpressionContext(project); contextCall.add(ExpressionContext.CONTEXT_METACLASS, self.getClassType()); contextCall.add(ExpressionContext.THIS, self); try { var queryResult = ExpressionHelper.call(compiled, java.util.Collections.singletonList(contextCall), valueContext); if(queryResult != null){ if(queryResult instanceof java.util.Collection){ rezult.addAll(queryResult); } else if(queryResult instanceof com.nomagic.uml2.ext.magicdraw.classes.mdkernel.Element){ rezult.add(queryResult); } } } catch (e) { // ignored exception to prevent same exception being shown in UI twice returnEmpty = true; } } } if(returnEmpty){ rezult.clear(); }else{ rezult.addAll(additionalElements); rezult.removeAll(excludedElements); } rezult }</body> </expression> </callExpressionSpecification> - + <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <callExpressionSpecification includeCustomTypes="true" includeSubtypes="false" xmlns="http://www.nomagic.com/schemas/MagicDraw/StructuredExpression/2013"> <taggedValues> <entry key="name"> <value>specificElements</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <taggedValues> <entry key="name"> <value>Contextual Variable1</value> </entry> </taggedValues> </argument> <expression xsi:type="makeInlineExpressionSpecification" language="Binary" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <parameter name="arg0" type="com.nomagic.uml2.ext.magicdraw.classes.mdkernel.Element" ordered="false" unique="false" multiple="false"/> <body>com.nomagic.magicdraw.adornment.validation.SpecificElementsExpression</body> </expression> </callExpressionSpecification> - + <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <callExpressionSpecification includeCustomTypes="true" includeSubtypes="false" xmlns="http://www.nomagic.com/schemas/MagicDraw/StructuredExpression/2013"> <taggedValues> <entry key="name"> <value>specificDiagrams</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <taggedValues> <entry key="name"> <value>Contextual Variable1</value> </entry> </taggedValues> </argument> <expression xsi:type="makeInlineExpressionSpecification" language="Binary" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <parameter name="arg0" type="com.nomagic.uml2.ext.magicdraw.classes.mdkernel.Element" ordered="false" unique="false" multiple="false"/> <body>com.nomagic.magicdraw.adornment.validation.SpecificDiagramsExpression</body> </expression> </callExpressionSpecification> - - - - - - - - + + + + + + + + - - - - - + + + + + diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Find_By_Text.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Find_By_Text.profile.uml index 924395e6a..3da3c4f66 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Find_By_Text.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Find_By_Text.profile.uml @@ -1,15 +1,15 @@ - + - - + + - -
+ +
- -
+ +
@@ -20,58 +20,58 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- - + + - - - - + + + + diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Traceability_customization.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Traceability_customization.profile.uml index 57a375453..f7e7036f1 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Traceability_customization.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.Traceability_customization.profile.uml @@ -1,20 +1,20 @@ - + - - + + - -
+ +
- -
+ +
- -
+ +
@@ -25,898 +25,898 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -924,165 +924,165 @@ - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + realizingClass - - + + realizingComponent - - + + realizingClassifier - - + + manifestedByArtifact - - + + realizingClassifier - - + + realizingUseCase - - + + allRealizingElements - - + + allRealizingElements realizingElement - - + + specifyingComponent Realized Interfaces - - + + allSpecifyingElements - - + + specifyingElement - - + + specifyingUseCase - - + + manifestedInArtifact - - + + specifyingClass - - + + specifyingUseCase - - - + + + usedClassifier - - + + allGeneralClassifiers Base Classifiers - - + + allSpecificClassifiers - - + + specificClassifier - - + + describingBehavior - - + + describedUseCase - - + + usedClassifier - - + + participatesInActivity - - + + participatesInInteraction - - + + - + - + - + - + - + - + - + @@ -1090,137 +1090,137 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + Abstraction; Relation; Abstraction; Target to source; Class; - + Abstraction; Relation; Abstraction; Target to source; Component; - + Realization; Relation; Realization; Target to source; Component; InterfaceRealization; Relation; InterfaceRealization; Target to source; Classifier; - + Manifestation; Relation; Manifestation; Target to source; Artifact; - + ComponentRealization; Relation; ComponentRealization; Target to source; Classifier; - + Abstraction; Relation; Abstraction; Target to source; UseCase; - + All Realizing Elements;Binary;com.nomagic.magicdraw.derivedproperty.RecursiveCollectionExpression(NamedElement.realizingElement); - + Abstraction; Relation; Abstraction; Target to source; NamedElement; ComponentRealization; Relation; ComponentRealization; Target to source; Classifier; InterfaceRealization; Relation; InterfaceRealization; Target to source; Classifier; - + ComponentRealization; Relation; ComponentRealization; Source to target; Component; - + All Specifying Elements;Binary;com.nomagic.magicdraw.derivedproperty.RecursiveCollectionExpression(NamedElement.specifyingElement); - + Abstraction; Relation; Abstraction; Source to target; NamedElement; ComponentRealization; Relation; ComponentRealization; Source to target; Component; InterfaceRealization; Relation; InterfaceRealization; Source to target; Interface; - + Abstraction; Relation; Abstraction; Source to target; UseCase; - + Manifestation;Relation;Manifestation;Source to target;Component; - + Abstraction; Relation; Abstraction; Source to target; Class; - + Abstraction; Relation; Abstraction; Source to target; UseCase; - + Owned Behavior;Property;BehavioredClassifier.ownedBehavior;Target to source;Classifier; Classifiers used by Activities as types of Nodes;MetaChain;Activity.node.ObjectNode.type; - + All Generalization;Binary;com.nomagic.magicdraw.derivedproperty.RecursiveCollectionExpression(Classifier.Base Classifiers); - + All Generalization;Binary;com.nomagic.magicdraw.derivedproperty.RecursiveCollectionExpression(Classifier.specificClassifier); - + Generalization; Relation; Generalization; Target to source; Classifier; - + ownedBehavior; Property; BehavioredClassifier.ownedBehavior; Source to target; - + Owned Behavior; Property; BehavioredClassifier.ownedBehavior; Target to source; UseCase; - + Owned Behavior;Property;BehavioredClassifier.ownedBehavior;Target to source;Classifier; Classifiers used by Interaction as type of lifeline;MetaChain;Interaction.lifeline.Lifeline.type; - + Owned Behavior;Property;BehavioredClassifier.ownedBehavior;Source to target;Activity; Activities in those classifier is used as types of Nodes;MetaChain;Classifier._typedElementOfType.ObjectNode.activity; - + Owned Behavior;Property;BehavioredClassifier.ownedBehavior;Source to target;Interaction; Interactions in those classifier is used a type;MetaChain;Classifier._typedElementOfType.Property._lifelineOfRepresents.Lifeline.interaction; diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.profile.uml index 25b574945..7d8b1171e 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.MagicDraw_Profile.profile.uml @@ -1,1132 +1,1132 @@ - + - - - -
- - - - - - + + + +
+ + + + + + - + - - - + + + - - - + + + - + - + - - - - - + + + + + - + - - - - - + + + + + - + - + - + - + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - - - - - + + + + + - - - + + + - + - - - + + + - - - + + + - + - - - + + + - + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - + + + + - - - + + + - - - + + + - + - + - - - + + + - + - + - + - + - - - + + + - - - + + + - + - - - - - + + + + + - + - + - + - - - + + + - + - - - + + + - - - + + + - + - - - + + + - + - - - + + + - - - + + + - + - - - + + + - + - - - - - + + + + + - + - - - - - + + + + + - - - + + + - + - - - + + + - + - + - + - - - + + + - + - - - + + + - + - - - + + + - - - + + + - + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - - - + + + + + - + - + - + - - - + + + - + - - - + + + - + - + - + - + - + - + - + - - - - - + + + + + - + - + - + - - - + + + - + - + - + - + - + - - - + + + - - - + + + - - - + + + - + - - - + + + - + - + - - - + + + - - + + - - - - + + + + - - - - - + + + + + - - - - - + + + + + - + - + - - - + + + - + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - - - - - + + + + + - + - - - - - + + + + + - + - - - - - + + + + + - + - - - - - + + + + + - + - - - + + + - - - - + + + + - - - - + + + + - + - - - - + + + + - - - - - + + + + + - + - + - + - + - + - + - + - + - - - + + + - + - - - + + + - + - - - + + + - + - - - + + + - + - + - + - - - + + + - - - + + + - + - + - + - + - - - + + + - + - + - - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + + - + - + - - - + + + - + - - + + - + - + - + - + - + - - - - - + + + + + - - - + + + - -
+ +
- -
+ +
- -
+ +
@@ -1137,1212 +1137,1212 @@ - -
+ +
- -
+ +
- -
+ +
xor - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -2350,2629 +2350,2629 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
-
+ +
+
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
-
+ +
+
- -
+ +
- -
+ +
- -
+ +
- -
-
+ +
+
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
-
+ +
+
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
-
+ +
+
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -4980,76 +4980,76 @@ com.nomagic.magicdraw.expressions.evaluation.Find - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5057,53 +5057,53 @@ com.nomagic.magicdraw.expressions.evaluation.TypeTest - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5111,101 +5111,101 @@ com.nomagic.magicdraw.expressions.evaluation.InstanceNavigation - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5213,99 +5213,99 @@ com.nomagic.magicdraw.expressions.evaluation.IndirectlyRelatedElementsExpression - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5313,38 +5313,38 @@ com.nomagic.magicdraw.expressions.evaluation.ImpliedRelation - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5352,148 +5352,148 @@ com.nomagic.magicdraw.expressions.evaluation.DiagramUsedElementsExpression - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5501,54 +5501,54 @@ com.nomagic.magicdraw.expressions.evaluation.PropertyTest - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5556,63 +5556,63 @@ com.nomagic.magicdraw.expressions.evaluation.DiagramTypeTest - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5620,43 +5620,43 @@ com.nomagic.magicdraw.expressions.evaluation.logical.LogicalAnd - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5664,59 +5664,59 @@ com.nomagic.magicdraw.expressions.evaluation.logical.LogicalNot - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5724,59 +5724,59 @@ com.nomagic.magicdraw.expressions.evaluation.logical.LogicalOr - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5785,61 +5785,61 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5847,57 +5847,57 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionContains - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5905,57 +5905,57 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionAllMatch - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -5963,56 +5963,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionAnyMatch - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6020,56 +6020,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionIntersect - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6077,56 +6077,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionMapFlat - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6134,42 +6134,42 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionMap - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6177,56 +6177,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionIsEmpty - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6234,71 +6234,71 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionUnion - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6306,56 +6306,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionZipWith - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6363,41 +6363,41 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionReduce - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6405,41 +6405,41 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionMin - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6447,56 +6447,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionMax - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6504,56 +6504,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionFilter - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6561,41 +6561,41 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionExclude - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6603,57 +6603,57 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionFirst - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6661,56 +6661,56 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionGet - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6718,42 +6718,42 @@ com.nomagic.magicdraw.expressions.evaluation.collection.CollectionConcat - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6762,61 +6762,61 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6824,56 +6824,56 @@ com.nomagic.magicdraw.expressions.evaluation.comparison.Equals - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6881,56 +6881,56 @@ com.nomagic.magicdraw.expressions.evaluation.comparison.GreaterThanOrEquals - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6938,56 +6938,56 @@ com.nomagic.magicdraw.expressions.evaluation.comparison.GreaterThan - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -6995,56 +6995,56 @@ com.nomagic.magicdraw.expressions.evaluation.comparison.LessThanOrEquals - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7052,57 +7052,57 @@ com.nomagic.magicdraw.expressions.evaluation.comparison.LessThan - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7111,63 +7111,63 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7175,59 +7175,59 @@ com.nomagic.magicdraw.expressions.evaluation.string.Concat - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7236,31 +7236,31 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7268,59 +7268,59 @@ com.nomagic.magicdraw.expressions.evaluation.date.Timestamp - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7328,59 +7328,59 @@ com.nomagic.magicdraw.expressions.evaluation.date.FormatDate - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7389,72 +7389,72 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7462,53 +7462,53 @@ com.nomagic.magicdraw.expressions.evaluation.IfThenElse - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7516,42 +7516,42 @@ com.nomagic.magicdraw.expressions.evaluation.GetElementFeatureValue - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7560,53 +7560,53 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
@@ -7615,640 +7615,640 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
StructuredExpression <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <unionExpressionSpecification xmlns="http://www.nomagic.com/schemas/MagicDraw/StructuredExpression/2013"> <taggedValues> <entry key="name"> <value>Body</value> </entry> <entry key="ROOT_UNION"> <value>true</value> </entry> </taggedValues> <value xsi:type="callExpressionSpecification" includeCustomTypes="true" includeSubtypes="false" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <taggedValues> <entry key="name"> <value>Script1</value> </entry> </taggedValues> <argument xsi:type="callExpressionSpecification" includeCustomTypes="true" includeSubtypes="false"> <taggedValues> <entry key="name"> <value>Find1</value> </entry> </taggedValues> <argument xsi:type="stringExpressionSpecification"> <value>*</value> </argument> <argument xsi:type="callExpressionSpecification" includeCustomTypes="true" includeSubtypes="false"> <taggedValues> <entry key="name"> <value>Script1</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="makeInlineExpressionSpecification" language="Groovy"> <parameter name="arg1" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <body>return valueContext.getValue("scope")</body> </expression> </argument> <argument xsi:type="callExpressionSpecification" includeCustomTypes="true" includeSubtypes="false"> <taggedValues> <entry key="name"> <value>Script1</value> </entry> </taggedValues> <argument xsi:type="lookupExpressionSpecification" symbol="THIS"/> <expression xsi:type="makeInlineExpressionSpecification" language="Groovy"> <parameter name="arg1" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <body>return valueContext.getValue("type")</body> </expression> </argument> <argument xsi:type="booleanExpressionSpecification" value="false"/> <argument xsi:type="booleanExpressionSpecification" value="false"/> <argument xsi:type="stringExpressionSpecification"> <value></value> </argument> <argument xsi:type="stringExpressionSpecification"> <value></value> </argument> <argument xsi:type="booleanExpressionSpecification" value="false"/> <argument xsi:type="booleanExpressionSpecification" value="false"/> <argument xsi:type="booleanExpressionSpecification" value="true"/> <argument xsi:type="booleanExpressionSpecification" value="false"/> <argument xsi:type="booleanExpressionSpecification" value="false"/> <argument xsi:type="booleanExpressionSpecification" value="false"/> <expression xsi:type="interpretElementExpressionSpecification"> <element xsi:type="elementExpressionSpecification" element="999c1c17-33e1-4ca6-9a42-fd3bcbe447c3"/> </expression> </argument> <expression xsi:type="makeInlineExpressionSpecification" language="Groovy"> <parameter name="arg1" type="java.lang.Object" ordered="false" unique="false" multiple="false"/> <body>import com.nomagic.uml2.ext.jmi.helpers.StereotypesHelper import com.nomagic.uml2.ext.magicdraw.classes.mdkernel.InstanceSpecification Set set = (HashSet)arg1; return set.size()</body> </expression> </value> </unionExpressionSpecification> @@ -8257,1856 +8257,1856 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- - + + - + - - + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + <html><head><title>HP</title></head><body><p>name</p></body></html> <html><head><title>HP</title></head><body><p>FromStereotypeIconContent</p></body></html> <html><head><title>HP</title></head><body><p>FromStereotypeID</p></body></html> @@ -10152,6 +10152,6 @@ <html><head><title>SN</title></head><body><p>TAGS</p></body></html> <html><head><title>SN</title></head><body><p>CONSTRAINTS</p></body></html> - - + + diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.StandardProfile.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.StandardProfile.profile.uml index 3ec17f732..02da9c3de 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.StandardProfile.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.StandardProfile.profile.uml @@ -1,14 +1,14 @@ - - + + - -
+ +
- -
+ +
diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.Validation_Profile.profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.Validation_Profile.profile.uml index 72afb043d..07c79b203 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.Validation_Profile.profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.Validation_Profile.profile.uml @@ -1,153 +1,153 @@ - + - - - - - + + + + + - - - - - + + + + + - + - + - - - + + + - + - - - + + + - - + + - - + + - + - - - - - - - + + + + + + + - - - + + + - + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - + + + - - - - - + + + + + - - - + + + - - - - - + + + + + - -
+ +
- -
+ +
@@ -158,634 +158,634 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
Binary com.nomagic.magicdraw.validation.rules.OpaqueExpressionRules.isBinaryExpressionValid - -
+ +
- -
+ +
Binary com.nomagic.magicdraw.validation.rules.OpaqueExpressionRules.isOCLExpressionValid - -
+ +
- -
+ +
Binary com.nomagic.magicdraw.validation.rules.OpaqueExpressionRules.isExpressionExecutable - -
+ +
- -
+ +
Binary com.nomagic.magicdraw.validation.rules.OpaqueExpressionRules.mustHaveExpression - -
+ +
- -
+ +
Binary com.nomagic.magicdraw.validation.rules.ConstraintRules.isConstraintValid @@ -793,921 +793,921 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
OCL2.0 ownedParameter->forAll(direction <> ParameterDirectionKind::return implies not type.oclIsUndefined()) - -
+ +
- -
+ +
- -
+ +
OCL2.0 name <> '' - -
+ +
- -
+ +
- -
+ +
OCL2.0 (not self.oclIsKindOf(EnumerationLiteral)) implies classifier->notEmpty() - -
+ +
- -
+ +
- -
+ +
OCL2.0 self.memberEnd ->forAll ( n | (not n.lowerValue.oclIsUndefined()) or (not n.upperValue.oclIsUndefined())) - -
+ +
- -
+ +
- -
+ +
OCL2.0 name <> '' - -
+ +
- -
+ +
- -
+ +
OCL2.0 ((self.oclIsKindOf(State) and self.oclAsType(State).submachine.oclIsUndefined() and self.oclAsType(State).region->isEmpty() or self.oclIsKindOf(Pseudostate) or self.oclIsKindOf(ConnectionPointReference)) and (not (self.oclIsKindOf(ConnectionPointReference) or self.oclIsKindOf(FinalState) or (self.oclIsKindOf(Pseudostate) and (self.oclAsType(Pseudostate).kind=PseudostateKind::exitPoint or self.oclAsType(Pseudostate).kind=PseudostateKind::entryPoint or self.oclAsType(Pseudostate).kind=PseudostateKind::terminate or self.oclAsType(Pseudostate).kind=PseudostateKind::deepHistory or self.oclAsType(Pseudostate).kind=PseudostateKind::shallowHistory))))) implies outgoing->notEmpty() - -
+ +
- -
+ +
- -
+ +
OCL2.0 let k : PseudostateKind = self.oclAsType(Pseudostate).kind in (((self.oclIsKindOf(State) and self.oclAsType(State).submachine.oclIsUndefined() and self.oclAsType(State).region->isEmpty() or self.oclIsKindOf(Pseudostate) or self.oclIsKindOf(ConnectionPointReference)) and (not self.oclIsKindOf(ConnectionPointReference)) and (k.oclIsUndefined() or not (k=PseudostateKind::initial or k=PseudostateKind::entryPoint or k=PseudostateKind::exitPoint)))) implies incoming->notEmpty() - -
+ +
- -
+ +
- -
+ +
OCL2.0 name <> '' - -
+ +
- -
+ +
- -
+ +
OCL2.0 self.messageSort=MessageSort::synchCall implies (not self.signature.oclIsUndefined() and self.signature.oclIsKindOf(Operation)) - -
+ +
- -
+ +
- -
+ +
OCL2.0 (association.oclIsUndefined() and (not owner.oclIsKindOf(Interaction))) implies name <> '' - -
+ +
- -
+ +
- -
+ +
OCL2.0 ((not appliedStereotype->exists(name='startEvent')) and (not appliedStereotype->exists(name='messageStartEvent')) and (not appliedStereotype->exists(name='ruleStartEvent')) and (not appliedStereotype->exists(name='multipleStartEvent')) and (not appliedStereotype->exists(name='timerStartEvent')) and (not appliedStereotype->exists(name='linkStartEvent')) and (not appliedStereotype->exists(name='intermediateEvent')) and (not appliedStereotype->exists(name='multipleIntermediateEvent')) and (not appliedStereotype->exists(name='cancelIntermediateEvent')) and (not appliedStereotype->exists(name='compensationIntermediateEvent')) and (not appliedStereotype->exists(name='compensationIntermediateEvent')) and (not appliedStereotype->exists(name='messageIntermediateEvent')) and (not appliedStereotype->exists(name='ruleIntermediateEvent')) and (not appliedStereotype->exists(name='errorIntermediateEvent')) and (not appliedStereotype->exists(name='timerIntermediateEvent')) and (not appliedStereotype->exists(name='gateway')) and (not appliedStereotype->exists(name='eventBasedXOR')) and (not appliedStereotype->exists(name='aND')) and (not appliedStereotype->exists(name='oR')) and (not appliedStereotype->exists(name='complex')) and (not appliedStereotype->exists(name='dataBasedXOR')) and (not appliedStereotype->exists(name='endEvent')) and (not appliedStereotype->exists(name='cancelEndEvent')) and (not appliedStereotype->exists(name='linkEndEvent')) and (not appliedStereotype->exists(name='messageEndEvent')) and (not appliedStereotype->exists(name='compensationEndEvent')) and (not appliedStereotype->exists(name='terminateEndEvent')) and (not appliedStereotype->exists(name='errorEndEvent')) and (not appliedStereotype->exists(name='task')) and (not appliedStereotype->exists(name='sendTask')) and (not appliedStereotype->exists(name='scriptTask')) and (not appliedStereotype->exists(name='userTask')) and (not appliedStereotype->exists(name='referenceTask')) and (not appliedStereotype->exists(name='receiveTask')) and (not appliedStereotype->exists(name='serviceTask')) and (not appliedStereotype->exists(name='manualTask')) and (not appliedStereotype->exists(name='usddsderTask')) and (not appliedStereotype->exists(name='multiInstanceLoop')) and (not appliedStereotype->exists(name='standardLoop')) and (not appliedStereotype->exists(name='subProcess')) and (not appliedStereotype->exists(name='collapsedSubProcess')) and (not appliedStereotype->exists(name='adHoc')) and (not appliedStereotype->exists(name='compensation')) and not (self.oclIsKindOf(FinalNode) or self.oclIsKindOf(ActivityParameterNode) or self.oclIsKindOf(InputPin) or self.oclIsKindOf(SendSignalAction) or self.oclIsKindOf(AcceptEventAction))) implies (outgoing->notEmpty() or self.oclIsKindOf(ExecutableNode) and self.oclAsType(ExecutableNode).handler->notEmpty() or self.oclIsKindOf(Action) and self.oclAsType(Action).output->notEmpty()) - -
+ +
- -
+ +
- -
+ +
OCL2.0 ((not appliedStereotype->exists(name='startEvent')) and (not appliedStereotype->exists(name='messageStartEvent')) and (not appliedStereotype->exists(name='ruleStartEvent')) and (not appliedStereotype->exists(name='multipleStartEvent')) and (not appliedStereotype->exists(name='timerStartEvent')) and (not appliedStereotype->exists(name='linkStartEvent')) and (not appliedStereotype->exists(name='intermediateEvent')) and (not appliedStereotype->exists(name='multipleIntermediateEvent')) and (not appliedStereotype->exists(name='cancelIntermediateEvent')) and (not appliedStereotype->exists(name='compensationIntermediateEvent')) and (not appliedStereotype->exists(name='compensationIntermediateEvent')) and (not appliedStereotype->exists(name='messageIntermediateEvent')) and (not appliedStereotype->exists(name='ruleIntermediateEvent')) and (not appliedStereotype->exists(name='errorIntermediateEvent')) and (not appliedStereotype->exists(name='timerIntermediateEvent')) and (not appliedStereotype->exists(name='gateway')) and (not appliedStereotype->exists(name='eventBasedXOR')) and (not appliedStereotype->exists(name='aND')) and (not appliedStereotype->exists(name='oR')) and (not appliedStereotype->exists(name='complex')) and (not appliedStereotype->exists(name='dataBasedXOR')) and (not appliedStereotype->exists(name='endEvent')) and (not appliedStereotype->exists(name='cancelEndEvent')) and (not appliedStereotype->exists(name='linkEndEvent')) and (not appliedStereotype->exists(name='messageEndEvent')) and (not appliedStereotype->exists(name='compensationEndEvent')) and (not appliedStereotype->exists(name='terminateEndEvent')) and (not appliedStereotype->exists(name='errorEndEvent')) and (not appliedStereotype->exists(name='task')) and (not appliedStereotype->exists(name='sendTask')) and (not appliedStereotype->exists(name='scriptTask')) and (not appliedStereotype->exists(name='userTask')) and (not appliedStereotype->exists(name='referenceTask')) and (not appliedStereotype->exists(name='receiveTask')) and (not appliedStereotype->exists(name='serviceTask')) and (not appliedStereotype->exists(name='manualTask')) and (not appliedStereotype->exists(name='usddsderTask')) and (not appliedStereotype->exists(name='multiInstanceLoop')) and (not appliedStereotype->exists(name='standardLoop')) and (not appliedStereotype->exists(name='subProcess')) and (not appliedStereotype->exists(name='collapsedSubProcess')) and (not appliedStereotype->exists(name='adHoc')) and (not appliedStereotype->exists(name='compensation')) and not (self.oclIsKindOf(InitialNode) or self.oclIsKindOf(ActivityParameterNode) or self.oclIsKindOf(AcceptEventAction) or self.oclIsKindOf(OutputPin) or self.oclIsKindOf(SendSignalAction))) implies (incoming->notEmpty() or self.oclIsKindOf(Action) and self.oclAsType(Action).input->notEmpty() or self.oclIsKindOf(ObjectNode) and self.oclAsType(ObjectNode)._exceptionHandlerOfExceptionInput->notEmpty()) - -
+ +
- -
+ +
- -
+ +
OCL2.0 self.encoded5FextensionEndOfType->notEmpty() or (self.generalization->notEmpty()) - -
+ +
- -
+ +
- -
+ +
OCL2.0 source.oclIsKindOf(DecisionNode) implies not guard.oclIsUndefined() - -
+ +
- -
+ +
- -
+ +
OCL2.0 encoded5FgeneralizationOfGeneral->isEmpty() implies (self.oclAsType(Type).encoded5FtypedElementOfType->exists(a|a.oclIsKindOf(Property) implies a.oclAsType(Property).opposite.type.oclIsKindOf(UseCase))) - -
+ +
- -
+ +
- -
+ +
OCL2.0 let A:Association=self.definingFeature.oclAsType(Property).association in (A.oclIsUndefined() or not self.owningInstance.classifier->includes(A)) and not self.definingFeature.owner.oclIsTypeOf(Stereotype) implies (self.definingFeature.upper=-1) or (self.definingFeature.lower <= self.value->size()) - -
+ +
- -
+ +
- -
+ +
OCL2.0 self.tagDefinition.owner.oclIsTypeOf(Stereotype) implies (self.tagDefinition.lower <= self.value()->size()) - -
+ +
- -
+ +
- -
+ +
Binary - -
+ +
- -
+ +
- -
+ +
OCL2.0 outgoing->size()>1 - -
+ +
- -
+ +
- -
+ +
OCL2.0 (not self.definingFeature.owner.oclIsTypeOf(Stereotype)) and (self.definingFeature.upper = 1) implies (self.value->size()<=1) - -
+ +
- -
+ +
- -
+ +
OCL2.0 self.appliedStereotype->forAll(c| c.member->forAll(f|f.oclIsKindOf(Property) implies (let sf:Property = f.oclAsType(Property) in (not sf.lowerValue.oclIsUndefined()) and (sf.lower >= 1) and (sf.opposite.oclIsUndefined() or not sf.opposite.oclIsKindOf(ExtensionEnd)) implies self.taggedValue->exists(tv|tv.tagDefinition=sf and tv.value()->size()>=sf.lower) ) ) ) - -
+ +
- -
+ +
OCL2.0 metamodelReference->size()>0 - -
+ +
- -
+ +
- -
+ +
OCL2.0 self.tagDefinition.owner.oclIsTypeOf(Stereotype) and (self.tagDefinition.upper = 1) implies (self.value()->size()<=1) - -
+ +
- -
+ +
- -
+ +
OCL2.0 let A:Association=self.definingFeature.oclAsType(Property).association in (not A.oclIsUndefined() and self.owningInstance.classifier->includes(A)) implies self.value->size()=1 - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
OCL2.0 let oppose:Property = association.memberEnd->any(p|p <> self) in (not oppose.oclIsUndefined() and oppose.isComposite and not upperValue.oclIsUndefined()) implies (upper = 1) - -
+ +
- -
+ +
- -
+ +
OCL2.0 isAbstract implies method->isEmpty() - -
+ +
- -
+ +
- -
+ +
OCL2.0 ownedOperation->forAll(o|o.isQuery = true) - -
+ +
- -
+ +
- -
+ +
OCL2.0 isLeaf implies not isAbstract - -
+ +
- -
+ +
- -
+ +
OCL2.0 let atr: Set(Property) = attribute->select (a | not a.opposite.oclIsUndefined() and a.opposite.isComposite)->asSet() in atr -> exists( n | not n.lowerValue.oclIsUndefined() and n.lower = 1) implies atr -> size() = 1 - -
+ +
- -
+ +
OCL2.0 generalization.general->asSet()->size() <= 1 - -
+ +
- -
+ +
- -
+ +
OCL2.0 (language->exists(lng:String|lng='OCL2.0') and not owningConstraint.oclIsUndefined()) implies owningConstraint.constrainedElement->size()=1 - -
+ +
- -
+ +
- -
+ +
OCL2.0 ((not lowerValue.oclIsUndefined()) and (not upperValue.oclIsUndefined())) implies ((lower <= upper) or (upper = -1)) - -
+ +
- -
+ +
OCL2.0 let sourceLifeline:Lifeline = self.sendEvent.oclAsType(MessageOccurrenceSpecification).covered->any(true) in let targetLifeline:Lifeline = self.receiveEvent.oclAsType(MessageOccurrenceSpecification).covered->any(true) in (sourceLifeline <> targetLifeline) implies (let sourceType:Type = sourceLifeline.represents.type in let targetOperation:Operation = self.signature.oclAsType(Operation) in (not sourceType.oclIsUndefined() and not targetOperation.oclIsUndefined()) implies ((targetOperation.visibility <> VisibilityKind::private) or (targetOperation.UMLClass = sourceType))) - -
+ +
- -
+ +
OCL2.0 let lifelineType:Type = self.covered->any(true).represents.type in let constraintBody:ValueSpecification = self.invariant.specification in constraintBody.oclIsKindOf(ElementValue) implies (let stateType:Classifier = constraintBody.oclAsType(ElementValue).element.oclAsType(State).redefinitionContext->any(true) in stateType = lifelineType) - -
+ +
- -
+ +
OCL2.0 self.covered->size()<=1 - -
+ +
- -
+ +
- -
+ +
OCL2.0 (self.oclIsTypeOf(Property) and not type.oclIsUndefined() and type.oclIsKindOf(Stereotype)) implies (self.aggregation <> AggregationKind::composite) - -
+ +
- -
+ +
- -
+ +
OCL2.0 let coveredSize : Integer = covered->size() in if refersTo.oclIsUndefined() then coveredSize = 0 else refersTo.lifeline->size() = coveredSize endif - -
+ +
- -
+ +
- -
+ +
OCL2.0 not self.signal.oclIsUndefined() - -
+ +
- -
+ +
- -
+ +
@@ -1715,622 +1715,622 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
English - -
+ +
- -
+ +
English - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
OCL2.0 isAbstract implies owner.oclAsType(Classifier).isAbstract - -
+ +
- -
+ +
- -
+ +
OCL2.0 ownedAttribute->forAll( f | f.visibility=VisibilityKind::public ) and ownedOperation->forAll(a |a.visibility=VisibilityKind::public ) - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
Binary - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
Binary - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
Binary - -
+ +
- -
+ +
- -
+ +
Binary - -
+ +
- -
+ +
- -
+ +
Binary - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
English - -
+ +
- -
+ +
English - -
+ +
- -
+ +
English - -
+ +
- -
+ +
English - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
Binary @@ -2338,16 +2338,16 @@ - -
+ +
- -
+ +
- -
+ +
@@ -2357,8 +2357,8 @@ - -
+ +
Binary @@ -2366,217 +2366,217 @@ - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
English - -
+ +
- -
+ +
English - -
+ +
- -
+ +
JavaScript Rhino true - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
English - -
+ +
- -
+ +
English - -
+ +
- -
+ +
JavaScript Rhino true @@ -2584,233 +2584,233 @@ - -
+ +
- -
+ +
- -
+ +
English - -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
- -
+ +
English - + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + severity abbreviation errorMessage - + <html><head><title>SPF</title></head><body><p>name</p></body></html> <html><head><title>SPF</title></head><body><p>abbreviation</p></body></html> <html><head><title>SPF</title></head><body><p>errorMessage</p></body></html> diff --git a/jeaf-generator-test-model/xmi/UML_Standard_Profile.uml b/jeaf-generator-test-model/xmi/UML_Standard_Profile.uml index eee70afcb..1ca06f3ea 100644 --- a/jeaf-generator-test-model/xmi/UML_Standard_Profile.uml +++ b/jeaf-generator-test-model/xmi/UML_Standard_Profile.uml @@ -1,5 +1,5 @@ - + @@ -11,12 +11,12 @@ - - + + - - + + diff --git a/jeaf-generator-test-spring-boot3/src-gen/main/resources/products/product-services.yml b/jeaf-generator-test-spring-boot3/src-gen/main/resources/products/product-services.yml index 8e4e47272..ecd4e5f99 100644 --- a/jeaf-generator-test-spring-boot3/src-gen/main/resources/products/product-services.yml +++ b/jeaf-generator-test-spring-boot3/src-gen/main/resources/products/product-services.yml @@ -40,7 +40,7 @@ tags: paths: # ProductService - /products: + /products/: get: tags: - MasterData diff --git a/jeaf-generator-test-spring-jersey/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java b/jeaf-generator-test-spring-jersey/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java index 8ad476cfb..116e1a9d3 100644 --- a/jeaf-generator-test-spring-jersey/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java +++ b/jeaf-generator-test-spring-jersey/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java @@ -65,7 +65,7 @@ import com.anaptecs.spring.service.LocalBeanParamType; import com.anaptecs.spring.service.ProductService; -@Path("/products") +@Path("/") @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) public class ProductServiceResource { @@ -91,6 +91,7 @@ public class ProductServiceResource { /** * {@link ProductService#getProducts()} */ + @Path("products/") @GET public void getProducts( @Suspended AsyncResponse pAsyncResponse, @javax.ws.rs.core.Context HttpServletRequest pRequest ) { @@ -123,7 +124,7 @@ public void run( ) { /** * {@link ProductService#getProduct()} */ - @Path("{id}") + @Path("products/{id}") @GET public Response getProduct( @PathParam("id") String pProductID ) { // Delegate request to service. @@ -136,6 +137,7 @@ public Response getProduct( @PathParam("id") String pProductID ) { /** * {@link ProductService#createProduct()} */ + @Path("products/") @POST public Response createProduct( Product pProduct ) { // Delegate request to service. @@ -148,7 +150,7 @@ public Response createProduct( Product pProduct ) { /** * {@link ProductService#getSortiment()} */ - @Path("sortiment/{id}") + @Path("products/sortiment/{id}") @GET public Response getSortiment( @BeanParam Context pContext, @javax.ws.rs.core.Context HttpHeaders pHeaders ) { // Add custom headers. @@ -167,7 +169,7 @@ public Response getSortiment( @BeanParam Context pContext, @javax.ws.rs.core.Con /** * {@link ProductService#createChannelCode()} */ - @Path("ChannelCode") + @Path("products/ChannelCode") @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @@ -182,6 +184,7 @@ public Response createChannelCode( String pChannelCode ) { /** * {@link ProductService#ping()} */ + @Path("products/") @HEAD public Response ping( ) { // Delegate request to service. @@ -192,7 +195,7 @@ public Response ping( ) { /** * {@link ProductService#deprecatedOperation()} */ - @Path("deprecated/operation") + @Path("products/deprecated/operation") @GET @Deprecated public Response deprecatedOperation( ) { @@ -206,7 +209,7 @@ public Response deprecatedOperation( ) { /** * {@link ProductService#deprecatedContext()} */ - @Path("deprecated/context") + @Path("products/deprecated/context") @POST public Response deprecatedContext( @BeanParam DeprecatedContext pContext ) { // Delegate request to service. @@ -219,7 +222,7 @@ public Response deprecatedContext( @BeanParam DeprecatedContext pContext ) { /** * {@link ProductService#deprecatedBeanParam()} */ - @Path("deprecated/beanParams") + @Path("products/deprecated/beanParams") @POST public Response deprecatedBeanParam( @BeanParam BeanParameter pBeanParam ) { // Delegate request to service. @@ -230,7 +233,7 @@ public Response deprecatedBeanParam( @BeanParam BeanParameter pBeanParam ) { /** * {@link ProductService#deprecatedParams()} */ - @Path("deprecated/params") + @Path("products/deprecated/params") @POST @Deprecated public Response deprecatedParams( @HeaderParam("param1") @Deprecated int pParam1 ) { @@ -244,7 +247,7 @@ public Response deprecatedParams( @HeaderParam("param1") @Deprecated int pParam1 /** * {@link ProductService#deprecatedBody()} */ - @Path("deprecated/body") + @Path("products/deprecated/body") @POST public Response deprecatedBody( @DefaultValue("Hello World!") @Deprecated String pBody ) { // Delegate request to service. @@ -257,7 +260,7 @@ public Response deprecatedBody( @DefaultValue("Hello World!") @Deprecated String /** * {@link ProductService#deprectedComplexRequestBody()} */ - @Path("deprecated/complexBody") + @Path("products/deprecated/complexBody") @POST public Response deprectedComplexRequestBody( @Deprecated Product pProduct ) { // Delegate request to service. @@ -268,7 +271,7 @@ public Response deprectedComplexRequestBody( @Deprecated Product pProduct ) { /** * {@link ProductService#deprecatedComplexReturn()} */ - @Path("deprecated/complexReturn") + @Path("products/deprecated/complexReturn") @GET @Deprecated public Response deprecatedComplexReturn( ) { @@ -282,7 +285,7 @@ public Response deprecatedComplexReturn( ) { /** * {@link ProductService#loadSpecificThings()} */ - @Path("specific/{id}") + @Path("products/specific/{id}") @PATCH public Response loadSpecificThings( @BeanParam SpecialContext pContext, @javax.ws.rs.core.Context HttpHeaders pHeaders ) { @@ -300,7 +303,7 @@ public Response loadSpecificThings( @BeanParam SpecialContext pContext, /** * {@link ProductService#createChannelCodeFromObject()} */ - @Path("ChannelCodeObject") + @Path("products/ChannelCodeObject") @POST public Response createChannelCodeFromObject( ChannelCode pChannelCode ) { // Delegate request to service. @@ -313,7 +316,7 @@ public Response createChannelCodeFromObject( ChannelCode pChannelCode ) { /** * {@link ProductService#addCurrencies()} */ - @Path("currencies") + @Path("products/currencies") @POST public Response addCurrencies( List pCurrencies ) { // Delegate request to service. @@ -326,7 +329,7 @@ public Response addCurrencies( List pCurrencies ) { /** * {@link ProductService#isCurrencySupported()} */ - @Path("currencies/valid") + @Path("products/currencies/valid") @POST public Response isCurrencySupported( CurrencyCode pCurrency ) { // Delegate request to service. @@ -339,7 +342,7 @@ public Response isCurrencySupported( CurrencyCode pCurrency ) { /** * {@link ProductService#testCodeTypeUsage()} */ - @Path("codeTypeUsages") + @Path("products/codeTypeUsages") @POST public Response testCodeTypeUsage( StringCodeType pStringCode ) { // Delegate request to service. @@ -352,7 +355,7 @@ public Response testCodeTypeUsage( StringCodeType pStringCode ) { /** * {@link ProductService#testLocalBeanParamType()} */ - @Path("LocalBeanParam") + @Path("products/LocalBeanParam") @GET public Response testLocalBeanParamType( @BeanParam LocalBeanParamType pBeanParam ) { // Delegate request to service. @@ -365,7 +368,7 @@ public Response testLocalBeanParamType( @BeanParam LocalBeanParamType pBeanParam /** * {@link ProductService#testExternalBeanParameterType()} */ - @Path("ExternalBeanParam") + @Path("products/ExternalBeanParam") @GET public Response testExternalBeanParameterType( @BeanParam ParentBeanParamType pParent ) { // Delegate request to service. @@ -378,7 +381,7 @@ public Response testExternalBeanParameterType( @BeanParam ParentBeanParamType pP /** * {@link ProductService#testChildBeanParameter()} */ - @Path("ChildBeanParam") + @Path("products/ChildBeanParam") @GET public Response testChildBeanParameter( @BeanParam ChildBeanParameterType pChild ) { // Delegate request to service. @@ -391,7 +394,7 @@ public Response testChildBeanParameter( @BeanParam ChildBeanParameterType pChild /** * {@link ProductService#testDateQueryParams()} */ - @Path("test-date-query-params/{path}") + @Path("products/test-date-query-params/{path}") @GET public Response testDateQueryParams( @PathParam("path") String pPath, @QueryParam("startTimestamp") OffsetDateTime pStartTimestamp, @QueryParam("startTime") OffsetTime pStartTime, @@ -409,7 +412,7 @@ public Response testDateQueryParams( @PathParam("path") String pPath, /** * {@link ProductService#testDateQueryParamsBean()} */ - @Path("test-date-query-params-beans/{path}") + @Path("products/test-date-query-params-beans/{path}") @GET public Response testDateQueryParamsBean( @PathParam("path") String pPath, @BeanParam DateQueryParamsBean pQueryParams ) { @@ -421,7 +424,7 @@ public Response testDateQueryParamsBean( @PathParam("path") String pPath, /** * {@link ProductService#testDateHeaderParams()} */ - @Path("test-date-header-params/{path}") + @Path("products/test-date-header-params/{path}") @GET public Response testDateHeaderParams( @PathParam("path") String pPath, @HeaderParam("Offset-Date-Time") OffsetDateTime pOffsetDateTime, @@ -439,7 +442,7 @@ public Response testDateHeaderParams( @PathParam("path") String pPath, /** * {@link ProductService#testDateHeaderParamsBean()} */ - @Path("test-date-header-params-beans/{path}") + @Path("products/test-date-header-params-beans/{path}") @GET public Response testDateHeaderParamsBean( @PathParam("path") String pPath, @BeanParam DateHeaderParamsBean pHeaderParams ) { @@ -451,7 +454,7 @@ public Response testDateHeaderParamsBean( @PathParam("path") String pPath, /** * {@link ProductService#testTechnicalHeaderParam()} */ - @Path("technicalHeaderParam") + @Path("products/technicalHeaderParam") @GET public Response testTechnicalHeaderParam( @HeaderParam("Reseller") String pReseller ) { // Delegate request to service. @@ -464,7 +467,7 @@ public Response testTechnicalHeaderParam( @HeaderParam("Reseller") String pResel /** * {@link ProductService#testTechnicalHeaderBean()} */ - @Path("technicalHeaderBeanParam") + @Path("products/technicalHeaderBeanParam") @GET public Response testTechnicalHeaderBean( @BeanParam TechnicalHeaderContext pContext, @javax.ws.rs.core.Context HttpHeaders pHeaders ) { @@ -484,7 +487,7 @@ public Response testTechnicalHeaderBean( @BeanParam TechnicalHeaderContext pCont /** * {@link ProductService#processDataTypes()} */ - @Path("product-codes") + @Path("products/product-codes") @GET public Response processDataTypes( @QueryParam("pCodes") String[] pCodesAsBasicType ) { // Convert basic type parameters into "real" objects. diff --git a/jeaf-generator-test-spring-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxy.java b/jeaf-generator-test-spring-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxy.java index 8d08ef599..d01d81c83 100644 --- a/jeaf-generator-test-spring-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxy.java +++ b/jeaf-generator-test-spring-rest-proxy/src-gen/main/java/com/anaptecs/spring/service/restproxy/ProductServiceRESTProxy.java @@ -99,7 +99,8 @@ public List getProducts( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); + lPathBuilder.append('/'); + lPathBuilder.append("products/"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. RESTRequest lRequest = lRequestBuilder.build(); @@ -125,8 +126,8 @@ public Product getProduct( String pProductID ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); + lPathBuilder.append("products/"); lPathBuilder.append(pProductID); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. @@ -150,7 +151,8 @@ public boolean createProduct( Product pProduct ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); + lPathBuilder.append('/'); + lPathBuilder.append("products/"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pProduct as request body. lRequestBuilder.setBody(pProduct); @@ -175,9 +177,8 @@ public Sortiment getSortiment( Context pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("sortiment/"); + lPathBuilder.append("products/sortiment/"); lPathBuilder.append(pContext.getPathParam()); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -227,9 +228,8 @@ public ChannelCode createChannelCode( String pChannelCode ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ChannelCode"); + lPathBuilder.append("products/ChannelCode"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pChannelCode as request body. lRequestBuilder.setBody(pChannelCode); @@ -250,7 +250,8 @@ public void ping( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.HEAD, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); + lPathBuilder.append('/'); + lPathBuilder.append("products/"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request. RESTRequest lRequest = lRequestBuilder.build(); @@ -267,9 +268,8 @@ public String deprecatedOperation( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/operation"); + lPathBuilder.append("products/deprecated/operation"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. RESTRequest lRequest = lRequestBuilder.build(); @@ -292,9 +292,8 @@ public String deprecatedContext( DeprecatedContext pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/context"); + lPathBuilder.append("products/deprecated/context"); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request if (pContext != null) { @@ -335,9 +334,8 @@ public void deprecatedBeanParam( BeanParameter pBeanParam ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/beanParams"); + lPathBuilder.append("products/deprecated/beanParams"); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request if (pBeanParam != null) { @@ -374,9 +372,8 @@ public String deprecatedParams( @Deprecated int pParam1 ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/params"); + lPathBuilder.append("products/deprecated/params"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) lRequestBuilder.setHeader("param1", pParam1); @@ -402,9 +399,8 @@ public String deprecatedBody( @Deprecated String pBody ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/body"); + lPathBuilder.append("products/deprecated/body"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pBody as request body. lRequestBuilder.setBody(pBody); @@ -432,9 +428,8 @@ public void deprectedComplexRequestBody( @Deprecated Product pProduct ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/complexBody"); + lPathBuilder.append("products/deprecated/complexBody"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pProduct as request body. lRequestBuilder.setBody(pProduct); @@ -454,9 +449,8 @@ public Product deprecatedComplexReturn( ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("deprecated/complexReturn"); + lPathBuilder.append("products/deprecated/complexReturn"); lRequestBuilder.setPath(lPathBuilder.toString()); // Execute request and return result. RESTRequest lRequest = lRequestBuilder.build(); @@ -478,9 +472,8 @@ public void loadSpecificThings( SpecialContext pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.PATCH, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("specific/"); + lPathBuilder.append("products/specific/"); lPathBuilder.append(pContext.getPathParam()); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -532,9 +525,8 @@ public ChannelCode createChannelCodeFromObject( ChannelCode pChannelCode ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ChannelCodeObject"); + lPathBuilder.append("products/ChannelCodeObject"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pChannelCode as request body. lRequestBuilder.setBody(pChannelCode); @@ -559,9 +551,8 @@ public List addCurrencies( List pCurrencies ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("currencies"); + lPathBuilder.append("products/currencies"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pCurrencies as request body. lRequestBuilder.setBody(pCurrencies); @@ -589,9 +580,8 @@ public CurrencyCode isCurrencySupported( CurrencyCode pCurrency ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("currencies/valid"); + lPathBuilder.append("products/currencies/valid"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pCurrency as request body. lRequestBuilder.setBody(pCurrency); @@ -616,9 +606,8 @@ public IntegerCodeType testCodeTypeUsage( StringCodeType pStringCode ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.POST, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("codeTypeUsages"); + lPathBuilder.append("products/codeTypeUsages"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set parameter pStringCode as request body. lRequestBuilder.setBody(pStringCode); @@ -643,9 +632,8 @@ public String testLocalBeanParamType( LocalBeanParamType pBeanParam ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("LocalBeanParam"); + lPathBuilder.append("products/LocalBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pBeanParam != null) { @@ -677,9 +665,8 @@ public String testExternalBeanParameterType( ParentBeanParamType pParent ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ExternalBeanParam"); + lPathBuilder.append("products/ExternalBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pParent != null) { @@ -711,9 +698,8 @@ public String testChildBeanParameter( ChildBeanParameterType pChild ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("ChildBeanParam"); + lPathBuilder.append("products/ChildBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pChild != null) { @@ -760,9 +746,8 @@ public void testDateQueryParams( String pPath, OffsetDateTime pStartTimestamp, O RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-query-params/"); + lPathBuilder.append("products/test-date-query-params/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -817,9 +802,8 @@ public void testDateQueryParamsBean( String pPath, DateQueryParamsBean pQueryPar RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-query-params-beans/"); + lPathBuilder.append("products/test-date-query-params-beans/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request @@ -889,9 +873,8 @@ public void testDateHeaderParams( String pPath, OffsetDateTime pOffsetDateTime, RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-header-params/"); + lPathBuilder.append("products/test-date-header-params/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) @@ -943,9 +926,8 @@ public void testDateHeaderParamsBean( String pPath, DateHeaderParamsBean pHeader RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("test-date-header-params-beans/"); + lPathBuilder.append("products/test-date-header-params-beans/"); lPathBuilder.append(pPath); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) @@ -1004,9 +986,8 @@ public String testTechnicalHeaderParam( String pReseller ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("technicalHeaderParam"); + lPathBuilder.append("products/technicalHeaderParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pReseller != null) { @@ -1033,9 +1014,8 @@ public String testTechnicalHeaderBean( TechnicalHeaderContext pContext ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("technicalHeaderBeanParam"); + lPathBuilder.append("products/technicalHeaderBeanParam"); lRequestBuilder.setPath(lPathBuilder.toString()); // Set HTTP header(s) if (pContext != null) { @@ -1068,9 +1048,8 @@ public String processDataTypes( List pCodes ) { RESTRequest.Builder lRequestBuilder = RESTRequest.builder(ProductService.class, HttpMethod.GET, ContentType.JSON); // Build path of request StringBuilder lPathBuilder = new StringBuilder(); - lPathBuilder.append("/products"); lPathBuilder.append('/'); - lPathBuilder.append("product-codes"); + lPathBuilder.append("products/product-codes"); lRequestBuilder.setPath(lPathBuilder.toString()); // Add query parameter(s) to request if (pCodes != null) { diff --git a/jeaf-generator-test-spring/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java b/jeaf-generator-test-spring/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java index 65b8d8e5e..d421cadb5 100644 --- a/jeaf-generator-test-spring/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java +++ b/jeaf-generator-test-spring/src-gen/main/java/com/anaptecs/spring/service/resource/ProductServiceResource.java @@ -55,7 +55,7 @@ import com.anaptecs.spring.service.LocalBeanParamType; import com.anaptecs.spring.service.ProductService; -@RequestMapping(path = "/nova/prefix/products") +@RequestMapping(path = "/nova/prefix") @RestController public class ProductServiceResource { /** @@ -90,7 +90,7 @@ public ProductServiceResource( ProductService pProductService, ValidationExecuto * {@link ProductService#getProducts()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(method = { RequestMethod.GET }) + @RequestMapping(path = "products/", method = { RequestMethod.GET }) public List getProducts( ) { // Delegate request to service. List lResponse = productService.getProducts(); @@ -103,7 +103,7 @@ public List getProducts( ) { * {@link ProductService#getProduct()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "{id}", method = { RequestMethod.GET }) + @RequestMapping(path = "products/{id}", method = { RequestMethod.GET }) public Product getProduct( @PathVariable(name = "id", required = true) String pProductID ) { // Validate request parameter(s). validationExecutor.validateRequest(ProductService.class, pProductID); @@ -118,7 +118,7 @@ public Product getProduct( @PathVariable(name = "id", required = true) String pP * {@link ProductService#createProduct()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(method = { RequestMethod.POST }) + @RequestMapping(path = "products/", method = { RequestMethod.POST }) public boolean createProduct( @RequestBody(required = true) Product pProduct ) { // Validate request parameter(s). validationExecutor.validateRequest(ProductService.class, pProduct); @@ -133,7 +133,7 @@ public boolean createProduct( @RequestBody(required = true) Product pProduct ) { * {@link ProductService#getSortiment()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "sortiment/{id}", method = { RequestMethod.GET }) + @RequestMapping(path = "products/sortiment/{id}", method = { RequestMethod.GET }) public Sortiment getSortiment( @RequestHeader(name = "token", required = true) String pAccessToken, @RequestHeader(name = "lang", required = true) Locale pLanguage, @CookieValue(name = "reseller", required = true) long pResellerID, @@ -173,7 +173,7 @@ public Sortiment getSortiment( @RequestHeader(name = "token", required = true) S */ @ResponseStatus(HttpStatus.OK) @RequestMapping( - path = "ChannelCode", + path = "products/ChannelCode", consumes = { "application/json" }, produces = { "application/json" }, method = { RequestMethod.POST }) @@ -191,7 +191,7 @@ public ChannelCode createChannelCode( @RequestBody(required = true) String pChan * {@link ProductService#ping()} */ @ResponseStatus(HttpStatus.NO_CONTENT) - @RequestMapping(method = { RequestMethod.HEAD }) + @RequestMapping(path = "products/", method = { RequestMethod.HEAD }) public void ping( ) { // Delegate request to service. productService.ping(); @@ -201,7 +201,7 @@ public void ping( ) { * {@link ProductService#deprecatedOperation()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "deprecated/operation", method = { RequestMethod.GET }) + @RequestMapping(path = "products/deprecated/operation", method = { RequestMethod.GET }) @Deprecated public String deprecatedOperation( ) { // Delegate request to service. @@ -215,7 +215,7 @@ public String deprecatedOperation( ) { * {@link ProductService#deprecatedContext()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "deprecated/context", method = { RequestMethod.POST }) + @RequestMapping(path = "products/deprecated/context", method = { RequestMethod.POST }) public String deprecatedContext( @RequestHeader(name = "token", required = true) String pAccessToken, @RequestHeader(name = "lang", required = true) Locale pLanguage, @CookieValue(name = "reseller", required = true) long pResellerID, @@ -241,7 +241,7 @@ public String deprecatedContext( @RequestHeader(name = "token", required = true) * {@link ProductService#deprecatedBeanParam()} */ @ResponseStatus(HttpStatus.NO_CONTENT) - @RequestMapping(path = "deprecated/beanParams", method = { RequestMethod.POST }) + @RequestMapping(path = "products/deprecated/beanParams", method = { RequestMethod.POST }) public void deprecatedBeanParam( @RequestHeader(name = "token", required = true) String pAccessToken, @RequestHeader(name = "lang", required = true) Locale pLanguage, @RequestParam(name = "q2", required = true) @Deprecated String pOldStyle ) { @@ -262,7 +262,7 @@ public void deprecatedBeanParam( @RequestHeader(name = "token", required = true) * {@link ProductService#deprecatedParams()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "deprecated/params", method = { RequestMethod.POST }) + @RequestMapping(path = "products/deprecated/params", method = { RequestMethod.POST }) @Deprecated public String deprecatedParams( @RequestHeader(name = "param1", required = true) @Deprecated int pParam1 ) { // Validate request parameter(s). @@ -278,7 +278,7 @@ public String deprecatedParams( @RequestHeader(name = "param1", required = true) * {@link ProductService#deprecatedBody()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "deprecated/body", method = { RequestMethod.POST }) + @RequestMapping(path = "products/deprecated/body", method = { RequestMethod.POST }) public String deprecatedBody( @RequestBody(required = true) @Deprecated String pBody ) { // Validate request parameter(s). validationExecutor.validateRequest(ProductService.class, pBody); @@ -293,7 +293,7 @@ public String deprecatedBody( @RequestBody(required = true) @Deprecated String p * {@link ProductService#deprectedComplexRequestBody()} */ @ResponseStatus(HttpStatus.NO_CONTENT) - @RequestMapping(path = "deprecated/complexBody", method = { RequestMethod.POST }) + @RequestMapping(path = "products/deprecated/complexBody", method = { RequestMethod.POST }) public void deprectedComplexRequestBody( @RequestBody(required = true) @Deprecated Product pProduct ) { // Validate request parameter(s). validationExecutor.validateRequest(ProductService.class, pProduct); @@ -305,7 +305,7 @@ public void deprectedComplexRequestBody( @RequestBody(required = true) @Deprecat * {@link ProductService#deprecatedComplexReturn()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "deprecated/complexReturn", method = { RequestMethod.GET }) + @RequestMapping(path = "products/deprecated/complexReturn", method = { RequestMethod.GET }) @Deprecated public Product deprecatedComplexReturn( ) { // Delegate request to service. @@ -319,7 +319,7 @@ public Product deprecatedComplexReturn( ) { * {@link ProductService#loadSpecificThings()} */ @ResponseStatus(HttpStatus.NO_CONTENT) - @RequestMapping(path = "specific/{id}", method = { RequestMethod.PATCH }) + @RequestMapping(path = "products/specific/{id}", method = { RequestMethod.PATCH }) public void loadSpecificThings( @RequestHeader(name = "token", required = true) String pAccessToken, @RequestHeader(name = "lang", required = true) Locale pLanguage, @CookieValue(name = "reseller", required = true) long pResellerID, @@ -359,7 +359,7 @@ public void loadSpecificThings( @RequestHeader(name = "token", required = true) * {@link ProductService#createChannelCodeFromObject()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "ChannelCodeObject", method = { RequestMethod.POST }) + @RequestMapping(path = "products/ChannelCodeObject", method = { RequestMethod.POST }) public ChannelCode createChannelCodeFromObject( @RequestBody(required = true) ChannelCode pChannelCode ) { // Validate request parameter(s). validationExecutor.validateRequest(ProductService.class, pChannelCode); @@ -374,7 +374,7 @@ public ChannelCode createChannelCodeFromObject( @RequestBody(required = true) Ch * {@link ProductService#addCurrencies()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "currencies", method = { RequestMethod.POST }) + @RequestMapping(path = "products/currencies", method = { RequestMethod.POST }) public List addCurrencies( @RequestBody(required = true) List pCurrencies ) { // Validate request parameter(s). validationExecutor.validateRequest(ProductService.class, pCurrencies); @@ -389,7 +389,7 @@ public List addCurrencies( @RequestBody(required = true) List pHeaders ) { // Convert parameters into object as "BeanParams" are not supported by Spring Web. This way we do not pollute the @@ -903,7 +903,7 @@ public String testTechnicalHeaderBean( @RequestHeader(name = "Reseller", require * {@link ProductService#processDataTypes()} */ @ResponseStatus(HttpStatus.OK) - @RequestMapping(path = "product-codes", method = { RequestMethod.GET }) + @RequestMapping(path = "products/product-codes", method = { RequestMethod.GET }) public String processDataTypes( @RequestParam(name = "pCodes", required = false) String[] pCodesAsBasicType ) { // Convert basic type parameters into "real" objects. List pCodes; diff --git a/jeaf-generator-test-spring/src/test/java/com/anaptecs/spring/test/SpringRESTControllerTest.java b/jeaf-generator-test-spring/src/test/java/com/anaptecs/spring/test/SpringRESTControllerTest.java index 968e2099e..595eb44f4 100644 --- a/jeaf-generator-test-spring/src/test/java/com/anaptecs/spring/test/SpringRESTControllerTest.java +++ b/jeaf-generator-test-spring/src/test/java/com/anaptecs/spring/test/SpringRESTControllerTest.java @@ -53,7 +53,7 @@ public class SpringRESTControllerTest { @Test void testRESTControllerAccess( ) { - ResponseEntity lResponse = template.getForEntity(PREFIX + "/products", String.class); + ResponseEntity lResponse = template.getForEntity(PREFIX + "/products/", String.class); assertEquals("[{\"name\":\"Cool Product\",\"uri\":\"https://products.anaptecs.de/123456789\"}]", lResponse.getBody()); } @@ -63,7 +63,7 @@ void testAdvancedRESTControllerFeatures( ) throws Exception { // Execute simple request using Apache HTTP client CloseableHttpClient lHttpClient = HttpClientBuilder.create().build(); - ClassicHttpRequest lRequest = ClassicRequestBuilder.get(template.getRootUri() + PREFIX + "/products").build(); + ClassicHttpRequest lRequest = ClassicRequestBuilder.get(template.getRootUri() + PREFIX + "/products/").build(); CloseableHttpResponse lResponse = lHttpClient.execute(lRequest); assertEquals(200, lResponse.getCode()); assertEquals("[{\"name\":\"Cool Product\",\"uri\":\"https://products.anaptecs.de/123456789\"}]", @@ -120,7 +120,7 @@ void testAdvancedRESTControllerFeatures( ) throws Exception { @Test void testPOSTRequests( ) throws IOException { CloseableHttpClient lHttpClient = HttpClientBuilder.create().build(); - ClassicRequestBuilder lRequest = ClassicRequestBuilder.post(template.getRootUri() + PREFIX + "/products"); + ClassicRequestBuilder lRequest = ClassicRequestBuilder.post(template.getRootUri() + PREFIX + "/products/"); // // createProduct(...) diff --git a/jeaf-generator/src/main/resources/functions/RESTOperation.ext b/jeaf-generator/src/main/resources/functions/RESTOperation.ext index e47632d08..f86c5c7d6 100644 --- a/jeaf-generator/src/main/resources/functions/RESTOperation.ext +++ b/jeaf-generator/src/main/resources/functions/RESTOperation.ext @@ -9,18 +9,14 @@ cached JMM::RESTOperation asRESTOperation(uml::Element element): (JMM::RESTOperation) element; cached String getFullPath(JMM::RESTOperation operation): - if operation.path.length > 0 - then ((JMM::RESTResource) operation.owner).path + "/" + operation.path + " " + operation.httpMethods + if operation.getRESTOperationPath().length > 0 + then ((JMM::RESTResource) operation.owner).path + "/" + operation.getRESTOperationPath() + " " + operation.httpMethods else ((JMM::RESTResource) operation.owner).path + " " + operation.httpMethods; -// if operation.getRESTOperationPath().length > 0 -// then ((JMM::RESTResource) operation.owner).path + "/" + operation.getRESTOperationPath() + " " + operation.httpMethods -// else ((JMM::RESTResource) operation.owner).path + " " + operation.httpMethods; cached String getRESTOperationPath(JMM::RESTOperation operation): - operation.path; -// if operation.path.length > 0 -// then operation.getRESTOperationPathPrefix() + operation.path -// else operation.getRESTOperationPathPrefix(); + if operation.path.length > 0 + then operation.getRESTOperationPathPrefix() + operation.path + else operation.getRESTOperationPathPrefix(); private String getRESTOperationPathPrefix(JMM::RESTOperation operation): if operation.owner.asRESTResource().operationPathPrefix.length > 0 diff --git a/jeaf-generator/src/main/resources/java/Jackson.xpt b/jeaf-generator/src/main/resources/java/Jackson.xpt index 0c55601dc..c8ea533fb 100644 --- a/jeaf-generator/src/main/resources/java/Jackson.xpt +++ b/jeaf-generator/src/main/resources/java/Jackson.xpt @@ -253,7 +253,7 @@ «ENDIF» // Create configured modules and add them as well. - «FOREACH this.clientDependency.supplier.typeSelect(ModuleFactory) AS moduleFactory» + «FOREACH this.clientDependency.supplier.typeSelect(ModuleFactory).sortBy(e|e.fqn()) AS moduleFactory» lBuilder.addModule(«moduleFactory.fqn()».createDataTypeSerializerModule()); «IF moduleFactory.requiresCompositeDataTypeConverter()» lBuilder.addModule(«moduleFactory.fqn()».createCompositeDataTypeSerializerModule(pCompositeTypeConverter));