package com.flextrade.jfixture.builders;
import com.flextrade.jfixture.NoSpecimen;
import com.flextrade.jfixture.SpecimenBuilder;
import com.flextrade.jfixture.SpecimenContext;
import com.flextrade.jfixture.requests.SeededRequest;
class SeededStringBuilder implements SpecimenBuilder {
@Override
public Object create(Object request, SpecimenContext context) {
if(!(request instanceof SeededRequest))
return new NoSpecimen();
SeededRequest seededRequest = (SeededRequest)request;
if(!(seededRequest.getSeed() instanceof String))
return new NoSpecimen();
if(!seededRequest.getRequest().equals(String.class))
return new NoSpecimen();
String seed = (String)seededRequest.getSeed();
Object innerRequest = seededRequest.getRequest();
Object specimen = context.resolve(innerRequest);
if(!(specimen instanceof String))
return new NoSpecimen();
return seed + specimen;
}
}