io.sphere.sdk.expansion.ReferenceExpansionDsl Maven / Gradle / Ivy
package io.sphere.sdk.expansion;
import java.util.List;
public interface ReferenceExpansionDsl extends ReferenceExpansionSupport {
/**
* Creates a new object with the properties of the old object but replaces all expansion paths with {@code expansionPaths}.
* @param expansionPaths the new expansion paths
* @return new object
*/
C withExpansionPaths(final List> expansionPaths);
/**
* Creates a new object with the properties of the old object but replaces all expansion paths with a single {@code expansionPath}.
*
* An example in the product projection context:
* {@include.example io.sphere.sdk.products.expansion.ProductProjectionExpansionModelTest#withExpansionPathDemo()}
*
* @param expansionPath the new expansion paths
* @return new object
*/
C withExpansionPaths(final ExpansionPath expansionPath);
/**
* Creates a new object with the properties of the old object but adds {@code expansionPaths} to the expansion paths.
* @param expansionPaths the new expansion paths to add to the existing ones
* @return new object
*/
C plusExpansionPaths(final List> expansionPaths);
/**
* Creates a new object with the properties of the old object but adds {@code expansionPath} to the expansion paths.
*
* An example in the product projection context:
* {@include.example io.sphere.sdk.products.expansion.ProductProjectionExpansionModelTest#plusExpansionPathDemo()}
*
* @param expansionPath the new expansion path to add to the existing ones
* @return new object
*/
C plusExpansionPaths(final ExpansionPath expansionPath);
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy