Skip to content

Commit

Permalink
Support for site variables in SiteResource (#28340)
Browse files Browse the repository at this point in the history
* #28059

* #28059 Adding support for site variables when using the site related endpoints

* #28059 Updating postman tests

* #28059 Updating postman tests

* #28059 Adding support for site variables in the CLI

* #28059 Adding integration tests to the site variables functionality

* #28059 Updating integrations tests

* #28059 Applying sonarlint feedback

---------

Co-authored-by: fabrizzio-dotCMS <fabrizzio@dotCMS.com>
  • Loading branch information
jgambarios and fabrizzio-dotCMS committed Apr 25, 2024
1 parent 06347c0 commit 9a00a7a
Show file tree
Hide file tree
Showing 24 changed files with 3,880 additions and 213 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.dotcms.rest.api.v1.site;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import org.immutables.value.Value;

@Value.Style(typeImmutable = "*", typeAbstract = "Abstract*")
@JsonSerialize(as = SimpleSiteVarView.class)
@JsonDeserialize(as = SimpleSiteVarView.class)
@Value.Immutable
public interface AbstractSimpleSiteVarView {

String id();
String name();
String key();
String value();

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package com.dotcms.rest.api.v1.site;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;

public class SimpleSiteVariableForm {

private final String id;
private final String name;
private final String key;
private final String value;

@JsonCreator
public SimpleSiteVariableForm(@JsonProperty("id") final String id,
@JsonProperty("name") final String name,
@JsonProperty("key") final String key,
@JsonProperty("value") final String value) {

this.id = id;
this.name = name;
this.key = key;
this.value = value;
}

public String getId() {
return id;
}

public String getName() {
return name;
}

public String getKey() {
return key;
}

public String getValue() {
return value;
}

@Override
public String toString() {
return "SiteVariableForm{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", key='" + key + '\'' +
", value='" + value + '\'' +
'}';
}
}
11 changes: 10 additions & 1 deletion dotCMS/src/main/java/com/dotcms/rest/api/v1/site/SiteForm.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;

/**
* Form to create a site
Expand Down Expand Up @@ -43,6 +44,8 @@ public class SiteForm {

private final boolean forceExecution;

private final List<SimpleSiteVariableForm> variables;

@JsonCreator
public SiteForm(@JsonProperty("aliases") final String aliases,
@JsonProperty("siteName") final String siteName,
Expand All @@ -60,7 +63,8 @@ public SiteForm(@JsonProperty("aliases") final String aliases,
@JsonProperty("identifier") final String identifier,
@JsonProperty("inode") final String inode,
@JsonProperty("default") final boolean isDefault,
@JsonProperty("forceExecution") final boolean forceExecution) {
@JsonProperty("forceExecution") final boolean forceExecution,
@JsonProperty("variables") List<SimpleSiteVariableForm> siteVariables) {

this.aliases = aliases;
this.siteName = siteName;
Expand All @@ -79,6 +83,7 @@ public SiteForm(@JsonProperty("aliases") final String aliases,
this.inode = inode;
this.isDefault = isDefault;
this.forceExecution = forceExecution;
this.variables = siteVariables;
}

public String getIdentifier() {
Expand Down Expand Up @@ -149,6 +154,10 @@ public boolean isForceExecution() {
return forceExecution;
}

public List<SimpleSiteVariableForm> getVariables() {
return variables;
}

@Override
public String toString() {
return "SiteForm{" +
Expand Down

0 comments on commit 9a00a7a

Please sign in to comment.