private ProductCategory createCatFood()

in bigtop-data-generators/bigpetstore-data-generator/src/main/java/org/apache/bigtop/datagenerators/bigpetstore/generators/products/collections/MediumProductCollection.java [124:180]


	private ProductCategory createCatFood()
	{
		ProductCategoryBuilder builder = new ProductCategoryBuilder();

		builder.addApplicableSpecies(PetSpecies.CAT);
		builder.setCategory("dry cat food");
		builder.setTriggerTransaction(true);
		builder.setDailyUsageRate(2.0);
		builder.setAmountUsedPetPetAverage(0.1);
		builder.setAmountUsedPetPetVariance(0.05);
		builder.setTriggerTransactionRate(2.0);
		builder.setTriggerPurchaseRate(7.0);
		builder.setBasePrice(2.14);

		builder.addPropertyValues("brand",
				new ProductFieldValue("Wellfed", 0.67, 1.0),
				new ProductFieldValue("Feisty Feline", 0.72, 1.0),
				new ProductFieldValue("Pretty Cat", 0.0, 1.0));

		builder.addPropertyValues("meat",
				new ProductFieldValue("Tuna", 0.0, 1.0),
				new ProductFieldValue("Chicken", 0.0, 1.0),
				new ProductFieldValue("Turkey", 0.0, 1.0),
				new ProductFieldValue("Salmon", 0.1, 1.0));

		builder.addPropertyValues("lifestyle",
				new ProductFieldValue("Indoor", 0.0, 1.0),
				new ProductFieldValue("Outdoor", 0.0, 1.0),
				new ProductFieldValue("Weight Management", 0.1, 1.0));

		builder.addPropertyValues("lifestage",
				new ProductFieldValue("Senior", 0.0, 1.0),
				new ProductFieldValue("Kitten", 0.0, 1.0),
				new ProductFieldValue("Adult", 0.0, 1.0));

		builder.addPropertyValues("organic",
				new ProductFieldValue("true", 0.0, 1.1),
				new ProductFieldValue("false", 0.0, 1.0));

		builder.addPropertyValues("quantity",
				new ProductFieldValue(7.0, 0.0, 7.0),
				new ProductFieldValue(15.0, 0.0, 15.0));

		builder.addPropertyValues("hairball management",
				new ProductFieldValue("true", 0.1, 1.0),
				new ProductFieldValue("false", 0.0, 1.0));

		builder.addExclusionRule(new AndRule(
					new FieldPredicate("brand", "Pretty Cat"),
					new FieldPredicate("organic", "true")));

		builder.addExclusionRule(new AndRule(
				new FieldPredicate("brand", "Feisty Feline"),
				new FieldPredicate("organic", "false")));

		return builder.build();
	}