Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ Any `Namespace` stored in those libraries are now cached for quick access.
As a consequence, some coding rules violations have been fixed.
The `org.eclipse.syson.services.grammars` package in `syson-direct-edit-grammar` has been renamed into `org.eclipse.syson.direct.edit.grammars`.
`AbtractItemUsageBorderNodeDescriptionProvider` has been renamed to `AbstractItemUsageBorderNodeDescriptionProvider`.
- https://github.com/eclipse-syson/syson/issues/1532[#1532] [tables] Add new Requirements table View.
As a consequence, the `syson-table-requirements-view` and `syson-common-view` modules has been created.
`IViewDescriptionProvider.java` and `SysONViewDescriptionProvider.java` have been moved from `syson-diagram-common-view` to `syson-common-view`.

=== Dependency update

Expand Down Expand Up @@ -98,6 +101,7 @@ This contribution allows to switch from one _ViewDefinition_ to another one in a
* `SysMLPackageNodeAppearanceHandler implements INodeAppearanceHandler` handles how the node is updated from the `appearanceChanges`.
* A GraphQL mutation is also added through `editSysMLPackageNodeAppearance`.
* Same mechanism is applied to `ImportedPackage`, `Note` and `ViewFrame` nodes.
- https://github.com/eclipse-syson/syson/issues/1532[#1532] [tables] Add new Requirements table View.

== v2025.8.0

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,13 @@
import org.eclipse.sirius.web.domain.boundedcontexts.representationdata.RepresentationMetadata;
import org.eclipse.sirius.web.domain.boundedcontexts.representationdata.repositories.IRepresentationContentRepository;
import org.eclipse.sirius.web.domain.boundedcontexts.representationdata.services.api.IRepresentationMetadataUpdateService;
import org.eclipse.syson.application.services.GetIntermediateContainerCreationSwitch;
import org.eclipse.syson.sysml.Element;
import org.eclipse.syson.sysml.Relationship;
import org.eclipse.syson.sysml.SysmlFactory;
import org.eclipse.syson.sysml.ViewDefinition;
import org.eclipse.syson.sysml.ViewUsage;
import org.eclipse.syson.sysml.util.ElementUtil;
import org.eclipse.syson.util.GetIntermediateContainerCreationSwitch;
import org.eclipse.syson.util.SysONRepresentationDescriptionIdentifiers;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@
import org.eclipse.syson.sysml.SysmlPackage;
import org.eclipse.syson.sysml.ViewUsage;
import org.eclipse.syson.sysml.util.ElementUtil;
import org.eclipse.syson.util.GetIntermediateContainerCreationSwitch;
import org.eclipse.syson.util.SysMLMetamodelHelper;
import org.eclipse.syson.util.SysONRepresentationDescriptionIdentifiers;
import org.springframework.stereotype.Service;
Expand Down
11 changes: 11 additions & 0 deletions backend/application/syson-application/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,11 @@
<artifactId>syson-standard-diagrams-view</artifactId>
<version>2025.8.5</version>
</dependency>
<dependency>
<groupId>org.eclipse.syson</groupId>
<artifactId>syson-table-requirements-view</artifactId>
<version>2025.8.5</version>
</dependency>
<dependency>
<groupId>org.eclipse.syson</groupId>
<artifactId>syson-tree-explorer-view</artifactId>
Expand Down Expand Up @@ -148,6 +153,12 @@
<version>${sirius.web.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.sirius</groupId>
<artifactId>sirius-components-tables-tests</artifactId>
<version>${sirius.web.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.sirius</groupId>
<artifactId>sirius-components-trees-tests</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
/*******************************************************************************
* Copyright (c) 2025 Obeo.
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
package org.eclipse.syson.application.controllers.diagrams.graphql;

import java.util.Objects;

import org.eclipse.sirius.components.graphql.tests.api.IGraphQLRequestor;
import org.eclipse.sirius.components.graphql.tests.api.IMutationRunner;
import org.eclipse.syson.table.requirements.view.dto.CreateRequirementInput;
import org.springframework.stereotype.Service;

/**
* Used to invoke a create requirement table action with the GraphQL API.
*
* @author arichard
*/
@Service
public class CreateRequirementMutationRunner implements IMutationRunner<CreateRequirementInput> {

private static final String CREATE_REQUIREMENT_MUTATION = """
mutation createRequirement($input: CreateRequirementInput!) {
createRequirement(input: $input) {
__typename
... on ErrorPayload {
messages {
body
level
}
}
... on SuccessPayload {
messages {
body
level
}
}
}
}
""";

private final IGraphQLRequestor graphQLRequestor;

public CreateRequirementMutationRunner(IGraphQLRequestor graphQLRequestor) {
this.graphQLRequestor = Objects.requireNonNull(graphQLRequestor);
}

@Override
public String run(CreateRequirementInput input) {
return this.graphQLRequestor.execute(CREATE_REQUIREMENT_MUTATION, input);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
/*******************************************************************************
* Copyright (c) 2025 Obeo.
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
package org.eclipse.syson.application.controllers.diagrams.graphql;

import java.util.Objects;

import org.eclipse.sirius.components.graphql.tests.api.IGraphQLRequestor;
import org.eclipse.sirius.components.graphql.tests.api.IMutationRunner;
import org.eclipse.syson.table.requirements.view.dto.ExposeRequirementsInput;
import org.springframework.stereotype.Service;

/**
* Used to invoke a expose requirements table action with the GraphQL API.
*
* @author arichard
*/
@Service
public class ExposeRequirementsMutationRunner implements IMutationRunner<ExposeRequirementsInput> {

private static final String EXPOSE_REQUIREMENTS_MUTATION = """
mutation exposeRequirements($input: ExposeRequirementsInput!) {
exposeRequirements(input: $input) {
__typename
... on ErrorPayload {
messages {
body
level
}
}
... on SuccessPayload {
messages {
body
level
}
}
}
}
""";

private final IGraphQLRequestor graphQLRequestor;

public ExposeRequirementsMutationRunner(IGraphQLRequestor graphQLRequestor) {
this.graphQLRequestor = Objects.requireNonNull(graphQLRequestor);
}

@Override
public String run(ExposeRequirementsInput input) {
return this.graphQLRequestor.execute(EXPOSE_REQUIREMENTS_MUTATION, input);
}
}
Loading
Loading