/**
     * Initializes data with all the values which OpenWeatherMap provides. Only value missing is
     * therefore the current light intensity.
     *
     * @param currentWeather CurrentWeather object from which data is taken.
     * @param data WeatherData object to be initialized.
     */
    private void initWDwithOWMData(CurrentWeather currentWeather, WeatherData data) {
      try {
        if (currentWeather.getMainInstance() != null) {
          data.setOwmTemp(fahrenheitToCelsius(currentWeather.getMainInstance().getTemperature()));
          data.setOwmPressure(currentWeather.getMainInstance().getPressure());
          data.setOwmHumidity(currentWeather.getMainInstance().getHumidity());
        } else {
          data.setOwmTemp(TEMPDEFAULTVALUE);
          data.setOwmPressure(PRESDEFAULTVALUE);
          data.setOwmHumidity(HUMDEFAULTVALUE);
        }

        if (currentWeather.getWindInstance() != null) {
          data.setOwmWindSpeed(currentWeather.getWindInstance().getWindSpeed());
          data.setOwmWindDegree(currentWeather.getWindInstance().getWindDegree());
        } else {
          data.setOwmWindSpeed(WSPEEDDEFAULTVALUE);
          data.setOwmWindDegree(WDEGREEDEFAULTVALUE);
        }

        if ((currentWeather.getWeatherCount() > 0)
            && (currentWeather.getWeatherInstance(0) != null)) {
          data.setOwmDesc(currentWeather.getWeatherInstance(0).getWeatherDescription());
          data.setOwmName(currentWeather.getWeatherInstance(0).getWeatherName());
        } else {
          data.setOwmDesc("N/A");
          data.setOwmName("N/A");
        }

        if (currentWeather.getRainInstance() != null) {

          if (currentWeather.getRainInstance().hasRain1h())
            System.out.println(currentWeather.getRainInstance().getRain1h());
          if (currentWeather.getRainInstance().hasRain3h())
            System.out.println(currentWeather.getRainInstance().getRain3h());
        }

        if (currentWeather.getCloudsInstance() != null) {
          if (currentWeather.getCloudsInstance().hasPercentageOfClouds())
            System.out.println(currentWeather.getCloudsInstance().getPercentageOfClouds());
        }

      } catch (NullPointerException e) {
        e.printStackTrace();
        initWDwithOwmDefaults(data);
      }
    }
 private void initWDwithOwmDefaults(WeatherData data) {
   data.setOwmTemp(TEMPDEFAULTVALUE);
   data.setOwmPressure(PRESDEFAULTVALUE);
   data.setOwmHumidity(HUMDEFAULTVALUE);
   data.setOwmDesc("N/A");
   data.setOwmName("N/A");
   data.setOwmWindSpeed(WSPEEDDEFAULTVALUE);
   data.setOwmWindDegree(WDEGREEDEFAULTVALUE);
 }