public class ScenarioGenerator
extends java.lang.Object
Scenario
.Modifier and Type | Field and Description |
---|---|
private int[] |
goodUsersList |
private int[] |
kindUsersList |
private java.util.Date |
lastDateTime |
private int[] |
maliciousUsersList |
private int |
numberOfUsers |
private int[][] |
ratingsList |
private Scenario |
scenario |
private int[] |
strictUsersList |
Constructor and Description |
---|
ScenarioGenerator(int Users,
int Ratings,
int[] UsersDistribution,
int[] RatingsDistribution,
int[] PFDistribution) |
Modifier and Type | Method and Description |
---|---|
private float |
createPF(int PFcategory) |
private float |
createPrice(int valueCategory) |
private java.util.Date |
createRandomFutureTimestamp(java.util.Date lastDateTime) |
private float |
findTypeAndPickPF(int[] rating,
int[] PFDistribution) |
private float |
findTypeAndPickPrice(int[] rating,
int[] transactionValueDistribution) |
private int |
findTypeAndPickRandomUser(int[] rating) |
private void |
generateRatingList(int[] RatingsDistribution)
Creates a rating list of random generated ratings per rating type,
depending on the inputted distribution of ratings
|
void |
GenerateScenario(int[] PFDistribution)
Generates a randomized scenario based on the selection
of Users, Ratings and Transaction Values per rating type |
private void |
generateUserLists(int[] UsersDistribution)
Creates lists of incremental userIds, based on the given distribution of users per user type
|
Scenario |
getGeneratedScenario() |
int |
pickRandomGood() |
int |
pickRandomKind() |
int |
pickRandomMaliciousUser() |
int |
pickRandomStrict() |
private int |
pickRandomTarget() |
void |
printRatingList() |
private void |
shuffleArray(int[][] array)
Two dimensional implementation of the Fisher Yates shuffling algorithm
|
private Scenario scenario
private int[][] ratingsList
private int[] maliciousUsersList
private int[] strictUsersList
private int[] kindUsersList
private int[] goodUsersList
private java.util.Date lastDateTime
private int numberOfUsers
public ScenarioGenerator(int Users, int Ratings, int[] UsersDistribution, int[] RatingsDistribution, int[] PFDistribution)
private void generateUserLists(int[] UsersDistribution)
UsersDistribution
- private void generateRatingList(int[] RatingsDistribution)
RatingsDistribution
- public int pickRandomMaliciousUser()
public int pickRandomStrict()
public int pickRandomKind()
public int pickRandomGood()
private int pickRandomTarget()
public void GenerateScenario(int[] PFDistribution)
Generates a randomized scenario based on the selection
of Users, Ratings and Transaction Values per rating type
PFDistribution
- selection of Transaction Values per rating typeprivate java.util.Date createRandomFutureTimestamp(java.util.Date lastDateTime)
private float findTypeAndPickPrice(int[] rating, int[] transactionValueDistribution)
private float createPrice(int valueCategory)
private float findTypeAndPickPF(int[] rating, int[] PFDistribution)
private float createPF(int PFcategory)
public Scenario getGeneratedScenario()
public void printRatingList()
private void shuffleArray(int[][] array)
array
- to be shuffledprivate int findTypeAndPickRandomUser(int[] rating)