Skip to content

Commit 193ec56

Browse files
author
Julia Pham
committed
refactor: use elementFactory in FMBuilder
1 parent 0ad5e14 commit 193ec56

File tree

3 files changed

+8
-24
lines changed

3 files changed

+8
-24
lines changed

src/main/java/de/vill/model/building/AbstractUVLElementFactory.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,11 @@
55
import de.vill.model.constraint.LiteralConstraint;
66

77
public abstract class AbstractUVLElementFactory {
8-
8+
99
public abstract Feature createFeature(String name);
1010

1111
public abstract <T> Attribute<T> createAttribute(String name, T value, Feature correspondingFeature);
1212

1313
public abstract GlobalAttribute createGlobalAttribute(String identifier, FeatureModel featureModel);
1414

15-
// public abstract LiteralConstraint createFeatureLiteral(String name);
16-
1715
}

src/main/java/de/vill/model/building/DefaultUVLElementFactory.java

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,25 +4,20 @@
44
import de.vill.model.*;
55
import de.vill.model.constraint.LiteralConstraint;
66

7-
public class DefaultUVLElementFactory extends AbstractUVLElementFactory{
7+
public class DefaultUVLElementFactory extends AbstractUVLElementFactory {
88

99
@Override
10-
public Feature createFeature(String name){
10+
public Feature createFeature(String name) {
1111
return new Feature(name);
1212
}
1313

1414
@Override
15-
public <T> Attribute<T> createAttribute(String name, T value, Feature correspondingFeature){
15+
public <T> Attribute<T> createAttribute(String name, T value, Feature correspondingFeature) {
1616
return new Attribute<>(name, value, correspondingFeature);
17-
}
17+
}
1818

1919
@Override
20-
public GlobalAttribute createGlobalAttribute(String identifier, FeatureModel featureModel){
20+
public GlobalAttribute createGlobalAttribute(String identifier, FeatureModel featureModel) {
2121
return new GlobalAttribute(identifier, featureModel);
2222
}
23-
24-
// @Override
25-
// public LiteralConstraint createFeatureLiteral(String name){
26-
// return new LiteralConstraint(fmInConstruction.getFeatureMap().get(name));
27-
// }
2823
}

src/main/java/de/vill/model/building/FeatureModelBuilder.java

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,12 @@
1313
import java.util.Set;
1414
import java.util.function.Function;
1515

16-
/**
17-
*
18-
*/
1916
public class FeatureModelBuilder {
20-
21-
private Function<String, Feature> featureFactory = Feature::new;
2217

2318
private FeatureModel fmInConstruction;
2419

2520
private AbstractUVLElementFactory elementFactory;
2621

27-
public void setFeatureFactory(Function<String, Feature> featureFactory){
28-
this.featureFactory = featureFactory;
29-
}
30-
3122
public FeatureModelBuilder() {
3223
this(new DefaultUVLElementFactory());
3324
}
@@ -62,7 +53,7 @@ public boolean setRootFeature(Feature feature) {
6253
}
6354

6455
public Feature addRootFeature(String featureName, FeatureType featureType, Cardinality cardinality) {
65-
Feature rootFeature = featureFactory.apply(featureName);
56+
Feature rootFeature = elementFactory.createFeature(featureName);
6657
rootFeature.setFeatureType(featureType);
6758
rootFeature.setCardinality(cardinality);
6859

@@ -84,7 +75,7 @@ public Feature addFeature(String featureName, Group group, Import featureOrigin,
8475
}
8576

8677
public Feature addFeature(String featureName, Group group, Import featureOrigin, FeatureType type, Cardinality cardinality) {
87-
Feature feature = featureFactory.apply(featureName);
78+
Feature feature = elementFactory.createFeature(featureName);
8879
feature.setRelatedImport(featureOrigin);
8980
feature.setFeatureType(type);
9081
feature.setCardinality(cardinality);

0 commit comments

Comments
 (0)