This repository has been archived on 2022-12-21. You can view files and clone it, but cannot push or open issues or pull requests.
sdm03/src/main/java/com/github/dtschust/zork/parser/strategies/ZorkConditionParseStrategy....

26 lines
938 B
Java

package com.github.dtschust.zork.parser.strategies;
import com.github.dtschust.zork.ZorkCondition;
import com.github.dtschust.zork.ZorkConditionHas;
import com.github.dtschust.zork.ZorkConditionStatus;
import com.github.dtschust.zork.parser.Property;
import com.github.dtschust.zork.parser.PropertyParseStrategy;
public class ZorkConditionParseStrategy implements PropertyParseStrategy<ZorkCondition> {
@Override
public ZorkCondition parse(final Property source) {
if (source.hasSubProperty("has")) {
return new ZorkConditionHas(
source.subPropertyValue("has"),
source.subPropertyValue("object"),
source.subPropertyValue("owner")
);
} else {
return new ZorkConditionStatus(
source.subPropertyValue("status"),
source.subPropertyValue("object")
);
}
}
}