| [comment encoding = UTF-8 /] |
| [comment |
| /******************************************************************************* |
| * Copyright (c) 2014 Jad El-khoury. |
| * |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * and Eclipse Distribution License v. 1.0 which accompanies this distribution. |
| * |
| * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html |
| * and the Eclipse Distribution License is available at |
| * http://www.eclipse.org/org/documents/edl-v10.php. |
| * |
| * Contributors: |
| * |
| * Jad El-khoury - initial implementation of code generator (https://bugs.eclipse.org/bugs/show_bug.cgi?id=422448) |
| * |
| *******************************************************************************/ |
| /] |
| |
| [module domainSpecificationServices('http://org.eclipse.lyo/oslc4j/adaptorInterface')/] |
| |
| [import org::eclipse::lyo::oslc4j::codegenerator::services::services/] |
| |
| [query public definingDomainSpecification(aProperty: ResourceProperty) : DomainSpecification = |
| aProperty.eContainer(DomainSpecification) |
| /] |
| |
| [query public definingDomainSpecification(aResource: Resource) : DomainSpecification = |
| aResource.eContainer(DomainSpecification) |
| /] |
| |
| [query public javaFullFilesPath(aSpecification: Specification, anAdaptorInterface : AdaptorInterface) : String = |
| (if (aSpecification.generationSetting.oclIsUndefined())._or(aSpecification.generationSetting.javaFilesPath.isNullOrEmpty()) then |
| javaFilesBasePath(anAdaptorInterface) |
| else |
| aSpecification.generationSetting.javaFilesPath |
| endif) |
| /] |
| |
| [query public javaPackageName(aSpecification: Specification, anAdaptorInterface : AdaptorInterface) : String = |
| (if (aSpecification.generationSetting.oclIsUndefined())._or(aSpecification.generationSetting.javaClassPackageName.isNullOrEmpty()) then |
| javaClassBaseNamespace(anAdaptorInterface).concat('.resources') |
| else |
| aSpecification.generationSetting.javaClassPackageName |
| endif) |
| /] |
| |
| [query public javaFullFilesPath(aDomainSpecification: DomainSpecification, anAdaptorInterface : AdaptorInterface) : String = |
| (if (aDomainSpecification.generationSetting.oclIsUndefined())._or(aDomainSpecification.generationSetting.javaFilesPath.isNullOrEmpty()) then |
| javaFullFilesPath(aDomainSpecification.eContainer(Specification), anAdaptorInterface) |
| else |
| aDomainSpecification.generationSetting.javaFilesPath |
| endif) |
| /] |
| |
| [query public javaPackageName(aDomainSpecification: DomainSpecification, anAdaptorInterface : AdaptorInterface) : String = |
| (if (aDomainSpecification.generationSetting.oclIsUndefined())._or(aDomainSpecification.generationSetting.javaClassPackageName.isNullOrEmpty()) then |
| javaPackageName(aDomainSpecification.eContainer(Specification), anAdaptorInterface) |
| else |
| aDomainSpecification.generationSetting.javaClassPackageName |
| endif) |
| /] |
| |
| [query public javaInterfacePackageNameForConstants(aDomainSpecification: DomainSpecification, anAdaptorInterface : AdaptorInterface) : String = |
| javaPackageName(aDomainSpecification, anAdaptorInterface) |
| /] |
| |
| [query public javaInterfaceNameForConstants(aDomainSpecification: DomainSpecification) : String = |
| javaString(aDomainSpecification.namespacePrefix.name, 'oslc', true).concat('Constants') |
| /] |
| |
| [query public javaInterfaceFullNameForConstants(aDomainSpecification: DomainSpecification, anAdaptorInterface : AdaptorInterface) : String = |
| javaInterfacePackageNameForConstants(aDomainSpecification, anAdaptorInterface).concat('.').concat(javaInterfaceNameForConstants(aDomainSpecification)) |
| /] |
| |
| [query public javaInterfaceFullFileNameForConstants(aDomainSpecification: DomainSpecification, anAdaptorInterface : AdaptorInterface) : String = |
| javaFullFilesPath(aDomainSpecification, anAdaptorInterface) |
| .concatenatePaths(javaInterfacePackageNameForConstants(aDomainSpecification, anAdaptorInterface).substituteAll('.', '/')) |
| .concatenatePaths(javaInterfaceNameForConstants(aDomainSpecification)) |
| .concat('.java') |
| /] |