Guest User

Untitled

a guest
Apr 20th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.47 KB | None | 0 0
  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package su.vistar.fueldatagenerator;
  6.  
  7. import java.util.ArrayList;
  8. import java.util.Date;
  9. import java.util.List;
  10. import java.util.Random;
  11. import su.vistar.fueldatagenerator.db.DBFacade;
  12. import su.vistar.fueldatagenerator.db.entities.FuelSensorLevels;
  13. import su.vistar.fueldatagenerator.db.entities.RCurSensorValue;
  14. import su.vistar.fueldatagenerator.db.entities.SensorSource;
  15. import su.vistar.fueldatagenerator.db.entities.SensorType;
  16. import su.vistar.fueldatagenerator.db.entities.SensorValue;
  17. import su.vistar.fueldatagenerator.db.entities.VehicleSensor;
  18. import su.vistar.fueldatagenerator.db.entities.Vehicles;
  19.  
  20. /**
  21.  *
  22.  * @author katya
  23.  */
  24. public class Generator {
  25.    
  26.     private final static int VEHICLE_COUNT = 1000;
  27.     private final static int CLIENT_COUNT = 50;
  28.     private final static int TIMESTAMP_COUNT = 20;
  29.    
  30.     public void generated() {
  31.         Integer count = DBFacade.getCount();
  32.         System.out.println("count = " + count);
  33.     }
  34.        
  35.    
  36.      
  37.     //
  38.     private List<Vehicles> generatedVehicles() {
  39.         List<Vehicles> vehicles = new ArrayList<Vehicles>();
  40.        
  41.         Random r = new Random();
  42.        
  43.         for (int i = 0; i< VEHICLE_COUNT; i++) {
  44.             int vNumber = 2000000000 + r.nextInt(VEHICLE_COUNT) + i;
  45.             int realNumber = 100000 + r.nextInt(50000);
  46.             int client = 10000 + r.nextInt(CLIENT_COUNT);
  47.             Vehicles vehicle = new Vehicles(vNumber, realNumber, client);
  48.             vehicles.add(vehicle);
  49.         }
  50.        
  51.         return vehicles;
  52.     }
  53.    
  54.      private List<SensorSource> generatedSensorSourced() {
  55.         List<SensorSource> sensorSources = new ArrayList<SensorSource>();
  56.        
  57.         return sensorSources;
  58.     }
  59.  
  60.     private List<SensorType> generatedSensorType() {
  61.         List<SensorType> sensorTypes = new ArrayList<SensorType>();
  62.        
  63.         return sensorTypes;
  64.     }
  65.    
  66.     //
  67.     private List<VehicleSensor> generatedVehicleSensor(List<SensorType> sensorTypes, List<Vehicles> vehicles, List<SensorSource> sensorSources) {
  68.         List<VehicleSensor> vehicleSensors = new ArrayList<VehicleSensor>();
  69.         for (Vehicles vehicle: vehicles) {
  70.             for (SensorType sensorType: sensorTypes) {
  71.                 for
  72.             }
  73.         }
  74.        
  75.        
  76.         return vehicleSensors;
  77.     }
  78.    
  79.     //
  80.     private List<SensorValue> generatedSensorValue(List<VehicleSensor> vehicleSensor) {
  81.         List<SensorValue> sensorValues = new ArrayList();        
  82.         Random r = new Random();
  83.         Date currDate = new Date();
  84.         int id = 100;
  85.         for (VehicleSensor elem: vehicleSensor) {            
  86.             int shift = r.nextInt(10000);
  87.             for (int i = 0; i<TIMESTAMP_COUNT; i++) {
  88.                 long dateStamp = currDate.getTime() - shift - i*1000;
  89. //                в таблице у value указант тип float  
  90. //                float value = r.nextFloat()*100;    
  91.                 int value = r.nextInt(100);        
  92.                 SensorValue sensorValue = new SensorValue(id, elem.getId(),value,new Date(dateStamp));
  93.                 sensorValues.add(sensorValue);
  94.                 i++;
  95.             }
  96.         }
  97.        
  98.         return sensorValues;
  99.     }
  100.  
  101.     private List<FuelSensorLevels> generatedFuelSensorValues() {
  102.         List<FuelSensorLevels> fuelSensorLevelses = new ArrayList<FuelSensorLevels>();
  103.        
  104.         return fuelSensorLevelses;
  105.     }
  106.    
  107.     //
  108.     private List<RCurSensorValue> generatedRCurSensorValue(List<VehicleSensor> vehicleSensors, List<SensorValue> sensorValues) {
  109.         List<RCurSensorValue> rCurSensorValues = new ArrayList<RCurSensorValue>();
  110.        
  111.         for (VehicleSensor vehicleSensor: vehicleSensors) {
  112.             float value = 0;
  113.             Date maxTimeStamp = new Date(0);
  114.             for (SensorValue sensorValue: sensorValues) {
  115.                 if (sensorValue.getVehicle_sensor_id() == vehicleSensor.getId() && maxTimeStamp.before(sensorValue.getTimestamp())) {
  116.                     maxTimeStamp = sensorValue.getTimestamp();
  117.                     value = sensorValue.getValue();
  118.                 }
  119.             }
  120.             RCurSensorValue rCurSensorValue = new RCurSensorValue(vehicleSensor.getId(), value, maxTimeStamp);
  121.             rCurSensorValues.add(rCurSensorValue);
  122.         }
  123.         return rCurSensorValues;
  124.     }
  125.    
  126. }
Add Comment
Please, Sign In to add comment