Example usage for java.util Calendar JANUARY

List of usage examples for java.util Calendar JANUARY

Introduction

In this page you can find the example usage for java.util Calendar JANUARY.

Prototype

int JANUARY

To view the source code for java.util Calendar JANUARY.

Click Source Link

Document

Value of the #MONTH field indicating the first month of the year in the Gregorian and Julian calendars.

Usage

From source file:org.kuali.kfs.module.endow.document.service.impl.CurrentTaxLotServiceImpl.java

/**
 * This method will check the current month and set the calendar to that month
 * //www  . ja va  2  s  . c  o m
 * @param month month to set the calendar, currentDate currentDate
 * @return calendar calendar is set to the month selected
 */
protected Calendar setCaledarWithMonth(String month, Date lastPaymentDate) {
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(lastPaymentDate);

    int calendarMonth = 1;

    if (EndowConstants.FrequencyMonths.JANUARY.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.JANUARY;
    } else if (EndowConstants.FrequencyMonths.FEBRUARY.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.FEBRUARY;
    } else if (EndowConstants.FrequencyMonths.MARCH.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.MARCH;
    } else if (EndowConstants.FrequencyMonths.APRIL.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.APRIL;
    } else if (EndowConstants.FrequencyMonths.MAY.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.MAY;
    } else if (EndowConstants.FrequencyMonths.JUNE.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.JUNE;
    } else if (EndowConstants.FrequencyMonths.JULY.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.JULY;
    } else if (EndowConstants.FrequencyMonths.AUGUST.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.AUGUST;
    } else if (EndowConstants.FrequencyMonths.SEPTEMBER.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.SEPTEMBER;
    } else if (EndowConstants.FrequencyMonths.OCTOBER.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.OCTOBER;
    } else if (EndowConstants.FrequencyMonths.NOVEMBER.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.NOVEMBER;
    } else if (EndowConstants.FrequencyMonths.DECEMBER.equalsIgnoreCase(month)) {
        calendarMonth = Calendar.DECEMBER;
    }

    calendar.set(Calendar.MONTH, calendarMonth);

    return calendar;
}

From source file:com.alkacon.opencms.calendar.CmsCalendarDisplay.java

/**
 * Returns all displayed days of the specified year with their corresponding entries as lists.<p>
 * /*from  w  w  w  .  ja  va 2 s .c o m*/
 * The key of the Map has to be a Date object.<p>
 * 
 * The Map values are always lists of {@link CmsCalendarEntry} objects, if no entries are available for a specific day,
 * an empty List is returned.<p>
 * 
 * @param year the year of the month to display
 * @return all displayed days of the specified day range with their corresponding entries as lists
 */
public Map getEntriesForYear(int year) {

    Calendar startDay = new GregorianCalendar(getJsp().getRequestContext().getLocale());
    startDay.set(Calendar.YEAR, year);
    startDay.set(Calendar.MONTH, Calendar.JANUARY);
    startDay.set(Calendar.DAY_OF_MONTH, 1);

    Calendar endDay = (Calendar) startDay.clone();
    endDay.set(Calendar.MONTH, Calendar.DECEMBER);
    endDay.set(Calendar.DAY_OF_MONTH, 31);

    return getEntriesForDays(startDay, endDay);
}

From source file:org.openmrs.Person.java

/**
 * Convenience method: sets a person's birth date from an age as of the given date Also sets
 * flag indicating that the birth date is inexact. This sets the person's birth date to January
 * 1 of the year that matches this age and date
 * //  w  ww  .jav  a 2 s  .c  om
 * @param age (the age to set)
 * @param ageOnDate (null defaults to today)
 */
public void setBirthdateFromAge(int age, Date ageOnDate) {
    Calendar c = Calendar.getInstance();
    c.setTime(ageOnDate == null ? new Date() : ageOnDate);
    c.set(Calendar.DATE, 1);
    c.set(Calendar.MONTH, Calendar.JANUARY);
    c.add(Calendar.YEAR, -1 * age);
    setBirthdate(c.getTime());
    setBirthdateEstimated(true);

}

From source file:com.bw.luzz.monkeyapplication.View.DateTimePicker.date.DatePickerDialog.java

@Override
public Calendar getStartDate() {
    if (selectableDays != null)
        return selectableDays[0];
    if (mMinDate != null)
        return mMinDate;
    Calendar output = Calendar.getInstance();
    output.set(Calendar.YEAR, mMinYear);
    output.set(Calendar.DAY_OF_MONTH, 1);
    output.set(Calendar.MONTH, Calendar.JANUARY);
    return output;
}

From source file:br.com.hslife.orcamento.service.ResumoEstatisticaService.java

@SuppressWarnings("deprecation")
@Override// w w  w.  j a v  a2s  .c o  m
public List<PanoramaLancamentoConta> gerarRelatorioPanoramaLancamentoConta(
        CriterioBuscaLancamentoConta criterioBusca, int ano) {

    // Pega a data atual
    Calendar hoje = Calendar.getInstance();

    // Declara o Map de previso de lanamentos da conta
    Map<String, PanoramaLancamentoConta> mapPanoramaLancamentos = new LinkedHashMap<String, PanoramaLancamentoConta>();

    // Insere no Map o panorama para o clculo do saldo anterior
    PanoramaLancamentoConta saldoAnterior = new PanoramaLancamentoConta();
    saldoAnterior.setConta(criterioBusca.getConta());
    saldoAnterior.setAno(ano);
    saldoAnterior.setOid(Util.MD5("Saldo Anterior"));
    saldoAnterior.setDescricao("Saldo Anterior");
    saldoAnterior.setIndice(mapPanoramaLancamentos.values().size());

    mapPanoramaLancamentos.put(saldoAnterior.getOid(), saldoAnterior);

    // Criao das listas que sero usadas
    List<LancamentoConta> avulsos = new ArrayList<LancamentoConta>();
    List<LancamentoConta> parcelas = new ArrayList<LancamentoConta>();
    List<LancamentoConta> lancamentosProcessados = new ArrayList<LancamentoConta>();

    if (ano <= hoje.get(Calendar.YEAR)) {
        // Ano atual e anteriores  trazido o que est atualmente registrado na conta
        lancamentosProcessados = getLancamentoContaService().buscarPorCriterioBusca(criterioBusca);
    } else {
        // Anos posteriores  realizado a estimativa baseado no ms e ano informado e os lanamentos peridicos ativos da conta

        /*** Lanamentos parcelados ***/
        // Traz todos os lanamentos parcelados ativos da conta selecionada
        List<LancamentoPeriodico> parcelamentos = getLancamentoPeriodicoService()
                .buscarPorTipoLancamentoContaEStatusLancamento(TipoLancamentoPeriodico.PARCELADO,
                        criterioBusca.getConta(), StatusLancamento.ATIVO);

        // Itera os lanamentos parcelados adicionando suas parcelas caso estejam no mesmo ano que o relatrio
        for (LancamentoPeriodico parcelamento : parcelamentos) {
            List<LancamentoConta> parcelasLancamento = getLancamentoContaService()
                    .buscarPorLancamentoPeriodico(parcelamento);

            for (LancamentoConta parcela : parcelasLancamento) {
                int anoParcela = parcela.getDataPagamento().getYear() + 1900;
                if (anoParcela == ano) {
                    parcelas.add(parcela);
                }
            }
        }

        // Adiciona as parcelas nos lanamentos processados
        lancamentosProcessados.addAll(parcelas);

        /*** Lanamentos fixos ***/
        // Traz todos os lanamentos fixos ativos da conta selecionada
        List<LancamentoPeriodico> despesasFixas = getLancamentoPeriodicoService()
                .buscarPorTipoLancamentoContaEStatusLancamento(TipoLancamentoPeriodico.FIXO,
                        criterioBusca.getConta(), StatusLancamento.ATIVO);

        // Itera os lanamentos fixos
        for (LancamentoPeriodico despesaFixa : despesasFixas) {

            // Busca a ltima mensalidade paga
            LancamentoConta ultimaMensalidade = getLancamentoContaService()
                    .buscarUltimoPagamentoPeriodoGerado(despesaFixa);

            // Verifica se a despesa fixa  mensal
            if (despesaFixa.getPeriodoLancamento().equals(PeriodoLancamento.MENSAL)) {
                // Seta o ms da data de pagamento da mensalidade para Janeiro e duplica os lanamentos
                Calendar temp = Calendar.getInstance();
                temp.setTime(ultimaMensalidade.getDataPagamento());
                temp.set(Calendar.DAY_OF_MONTH, despesaFixa.getDiaVencimento());
                temp.set(Calendar.MONTH, Calendar.JANUARY);
                temp.set(Calendar.YEAR, ano);
                ultimaMensalidade.setDataPagamento(temp.getTime());

                // Seta o valor definido na despesa fixa
                ultimaMensalidade.setValorPago(despesaFixa.getValorParcela());

                lancamentosProcessados.add(ultimaMensalidade);
                lancamentosProcessados
                        .addAll(ultimaMensalidade.clonarLancamentos(11, IncrementoClonagemLancamento.MES));
            } else {

                // Gera mais 12 mensalidades e inclui na lista de acordo com o perodo da despesa fixa
                switch (despesaFixa.getPeriodoLancamento()) {
                case BIMESTRAL:
                    for (LancamentoConta l : ultimaMensalidade.clonarLancamentos(12,
                            IncrementoClonagemLancamento.BIMESTRE)) {
                        if ((l.getDataPagamento().getYear() + 1900) == ano)
                            lancamentosProcessados.add(l);
                    }
                    break;
                case TRIMESTRAL:
                    for (LancamentoConta l : ultimaMensalidade.clonarLancamentos(12,
                            IncrementoClonagemLancamento.TRIMESTRE)) {
                        if ((l.getDataPagamento().getYear() + 1900) == ano)
                            lancamentosProcessados.add(l);
                    }
                    break;
                case QUADRIMESTRAL:
                    for (LancamentoConta l : ultimaMensalidade.clonarLancamentos(12,
                            IncrementoClonagemLancamento.QUADRIMESTRE)) {
                        if ((l.getDataPagamento().getYear() + 1900) == ano)
                            lancamentosProcessados.add(l);
                    }
                    break;
                case SEMESTRAL:
                    for (LancamentoConta l : ultimaMensalidade.clonarLancamentos(12,
                            IncrementoClonagemLancamento.SEMESTRE)) {
                        if ((l.getDataPagamento().getYear() + 1900) == ano)
                            lancamentosProcessados.add(l);
                    }
                    break;
                case ANUAL:
                    for (LancamentoConta l : ultimaMensalidade.clonarLancamentos(12,
                            IncrementoClonagemLancamento.ANO)) {
                        if ((l.getDataPagamento().getYear() + 1900) == ano)
                            lancamentosProcessados.add(l);
                    }
                    break;
                default: // no faz nada
                }

            }

        }

        /*** Lanamentos avulsos ***/
        // Traz os lanamentos avulsos existente no ano do relatrio
        avulsos = getLancamentoContaService().buscarPorCriterioBusca(criterioBusca);

        // Itera os lanamentos avulsos para remover as mensalidades e parcelas
        for (Iterator<LancamentoConta> iterator = avulsos.iterator(); iterator.hasNext();) {
            if (iterator.next().getLancamentoPeriodico() != null) {
                iterator.remove();
            }
        }

        // Inclui os lanamentos avulsos
        lancamentosProcessados.addAll(avulsos);
    }

    // Busca os lanamentos e classifica-os em suas respectivas categorias
    List<Categoria> categorias = LancamentoContaUtil.organizarLancamentosPorCategoria(lancamentosProcessados);

    for (Categoria categoria : categorias) {
        String oid = Util.MD5(categoria.getDescricao());
        PanoramaLancamentoConta panorama = new PanoramaLancamentoConta();
        panorama.setConta(criterioBusca.getConta());
        panorama.setDescricao(categoria.getDescricao());
        panorama.setAno(ano);
        panorama.setOid(oid);
        panorama.setIndice(mapPanoramaLancamentos.values().size() + 1);
        mapPanoramaLancamentos.put(oid, panorama);

        // Rotina de insero dos valores dos lanamentos no panorama
        for (LancamentoConta lancamento : categoria.getLancamentos()) {
            mapPanoramaLancamentos.get(oid).setarMes(lancamento.getDataPagamento().getMonth(), lancamento);
        }
    }

    // Realiza o clculo do saldo total
    PanoramaLancamentoConta saldoTotal = new PanoramaLancamentoConta();
    saldoTotal.setConta(criterioBusca.getConta());
    saldoTotal.setAno(ano);
    saldoTotal.setOid(Util.MD5("Saldo Total"));
    saldoTotal.setDescricao("Saldo Total");
    saldoTotal.setIndice(mapPanoramaLancamentos.values().size() + 1);

    for (PanoramaLancamentoConta panorama : mapPanoramaLancamentos.values()) {
        saldoTotal.setJaneiro(saldoTotal.getJaneiro() + panorama.getJaneiro());
        saldoTotal.setFevereiro(saldoTotal.getFevereiro() + panorama.getFevereiro());
        saldoTotal.setMarco(saldoTotal.getMarco() + panorama.getMarco());
        saldoTotal.setAbril(saldoTotal.getAbril() + panorama.getAbril());
        saldoTotal.setMaio(saldoTotal.getMaio() + panorama.getMaio());
        saldoTotal.setJunho(saldoTotal.getJunho() + panorama.getJunho());
        saldoTotal.setJulho(saldoTotal.getJulho() + panorama.getJulho());
        saldoTotal.setAgosto(saldoTotal.getAgosto() + panorama.getAgosto());
        saldoTotal.setSetembro(saldoTotal.getSetembro() + panorama.getSetembro());
        saldoTotal.setOutubro(saldoTotal.getOutubro() + panorama.getOutubro());
        saldoTotal.setNovembro(saldoTotal.getNovembro() + panorama.getNovembro());
        saldoTotal.setDezembro(saldoTotal.getDezembro() + panorama.getDezembro());
    }

    mapPanoramaLancamentos.put(saldoTotal.getOid(), saldoTotal);

    // Pegar o valor do ltimo fechamento do ano anterior e atribui no ms de janeiro do panorama do saldo total
    FechamentoPeriodo fechamento = getFechamentoPeriodoService()
            .buscarUltimoFechamentoPeriodoAntesDataPorContaEOperacao(criterioBusca.getConta(),
                    Util.ultimoDiaAno(ano - 1), OperacaoConta.FECHAMENTO);
    if (fechamento == null) {
        mapPanoramaLancamentos.get(saldoAnterior.getOid())
                .setJaneiro(criterioBusca.getConta().getSaldoInicial());
    } else {
        mapPanoramaLancamentos.get(saldoAnterior.getOid()).setJaneiro(fechamento.getSaldo());
    }
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setJaneiro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getJaneiro()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getJaneiro());

    // Preenche o panorama do saldo anterior       
    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setFevereiro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getJaneiro());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setFevereiro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getFevereiro()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getFevereiro());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setMarco(mapPanoramaLancamentos.get(saldoTotal.getOid()).getFevereiro());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setMarco(mapPanoramaLancamentos.get(saldoTotal.getOid()).getMarco()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getMarco());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setAbril(mapPanoramaLancamentos.get(saldoTotal.getOid()).getMarco());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setAbril(mapPanoramaLancamentos.get(saldoTotal.getOid()).getAbril()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getAbril());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setMaio(mapPanoramaLancamentos.get(saldoTotal.getOid()).getAbril());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setMaio(mapPanoramaLancamentos.get(saldoTotal.getOid()).getMaio()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getMaio());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setJunho(mapPanoramaLancamentos.get(saldoTotal.getOid()).getMaio());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setJunho(mapPanoramaLancamentos.get(saldoTotal.getOid()).getJunho()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getJunho());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setJulho(mapPanoramaLancamentos.get(saldoTotal.getOid()).getJunho());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setJulho(mapPanoramaLancamentos.get(saldoTotal.getOid()).getJulho()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getJulho());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setAgosto(mapPanoramaLancamentos.get(saldoTotal.getOid()).getJulho());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setAgosto(mapPanoramaLancamentos.get(saldoTotal.getOid()).getAgosto()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getAgosto());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setSetembro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getAgosto());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setSetembro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getSetembro()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getSetembro());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setOutubro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getSetembro());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setOutubro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getOutubro()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getOutubro());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setNovembro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getOutubro());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setNovembro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getNovembro()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getNovembro());

    mapPanoramaLancamentos.get(saldoAnterior.getOid())
            .setDezembro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getNovembro());
    mapPanoramaLancamentos.get(saldoTotal.getOid())
            .setDezembro(mapPanoramaLancamentos.get(saldoTotal.getOid()).getDezembro()
                    + mapPanoramaLancamentos.get(saldoAnterior.getOid()).getDezembro());

    // Salva o resultado em um List e depois retorna os valores adicionados
    List<PanoramaLancamentoConta> resultado = new LinkedList<>(mapPanoramaLancamentos.values());

    return resultado;
}

From source file:com.frey.repo.DateUtil.java

/**
 * ?//from   w  w w.  java2s . c om
 */
public static int getPassDayOfSeason(Date date) {
    int day = 0;

    Date[] seasonDates = getSeasonDate(date);

    Calendar c = Calendar.getInstance();
    c.setTime(date);
    int month = c.get(Calendar.MONTH);

    if (month == Calendar.JANUARY || month == Calendar.APRIL || month == Calendar.JULY
            || month == Calendar.OCTOBER) {//
        day = getPassDayOfMonth(seasonDates[0]);
    } else if (month == Calendar.FEBRUARY || month == Calendar.MAY || month == Calendar.AUGUST
            || month == Calendar.NOVEMBER) {//
        day = getDayOfMonth(seasonDates[0]) + getPassDayOfMonth(seasonDates[1]);
    } else if (month == Calendar.MARCH || month == Calendar.JUNE || month == Calendar.SEPTEMBER
            || month == Calendar.DECEMBER) {//
        day = getDayOfMonth(seasonDates[0]) + getDayOfMonth(seasonDates[1]) + getPassDayOfMonth(seasonDates[2]);
    }
    return day;
}

From source file:org.apache.jena.graph.test.TestTypedLiterals.java

public void testDateTime_7() {
    Calendar testCal3 = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
    testCal3.clear();/*  w w  w.  j a  v  a 2s  .c o m*/
    testCal3.set(1999, Calendar.JANUARY, 30, 15, 9, 32);
    Literal lc = m.createTypedLiteral(testCal3);
    assertEquals("1999-01-30T15:09:32Z", lc.getLexicalForm());
    String urib = "rdf://test.com#";
    String uri1 = urib + "1";
    String urip = urib + "prop";
    String testN3 = "<" + uri1 + "> <" + urip + "> \"" + lc.getLexicalForm() + "\"^^<" + lc.getDatatypeURI()
            + "> .";
    java.io.StringReader sr = new java.io.StringReader(testN3);
    m.read(sr, urib, "N3");
    assertTrue(m.contains(m.getResource(uri1), m.getProperty(urip)));
    Resource r1 = m.getResource(uri1);
    Property p = m.getProperty(urip);
    XSDDateTime returnedDateTime = (XSDDateTime) r1.getProperty(p).getLiteral().getValue();
    assertEquals("deserialized calendar value", testCal3, returnedDateTime.asCalendar());
}

From source file:com.nextgis.ngm_clink_monitoring.activities.MainActivity.java

void testInsert() {
    //test sync//from   ww w  .j  a  v  a  2  s.  c  o m
    IGISApplication application = (IGISApplication) getApplication();
    MapBase map = application.getMap();
    NGWVectorLayer ngwVectorLayer = null;
    for (int i = 0; i < map.getLayerCount(); i++) {
        ILayer layer = map.getLayer(i);
        if (layer instanceof NGWVectorLayer) {
            ngwVectorLayer = (NGWVectorLayer) layer;
        }
    }
    if (null != ngwVectorLayer) {
        Uri uri = Uri.parse(
                "content://" + FoclSettingsConstantsUI.AUTHORITY + "/" + ngwVectorLayer.getPath().getName());
        ContentValues values = new ContentValues();
        //values.put(VectorLayer.FIELD_ID, 26);
        values.put("width", 1);
        values.put("azimuth", 2.0);
        values.put("status", "grot");
        values.put("temperatur", -13);
        values.put("name", "get");

        Calendar calendar = new GregorianCalendar(2015, Calendar.JANUARY, 23);
        values.put("datetime", calendar.getTimeInMillis());

        try {
            GeoPoint pt = new GeoPoint(37, 55);
            pt.setCRS(CRS_WGS84);
            pt.project(CRS_WEB_MERCATOR);
            GeoMultiPoint mpt = new GeoMultiPoint();
            mpt.add(pt);
            values.put(FIELD_GEOM, mpt.toBlob());
        } catch (IOException e) {
            e.printStackTrace();
        }
        Uri result = getContentResolver().insert(uri, values);
        if (result == null) {
            Log.d(TAG, "insert failed");
        } else {
            Log.d(TAG, result.toString());
        }
    }
}

From source file:com.frey.repo.DateUtil.java

/**
 * ?/*w ww  .  jav a2s .co m*/
 */
public static Date[] getSeasonDate(Date date) {
    Date[] season = new Date[3];

    Calendar c = Calendar.getInstance();
    c.setTime(date);

    int nSeason = getSeason(date);
    if (nSeason == 1) {//
        c.set(Calendar.MONTH, Calendar.JANUARY);
        season[0] = c.getTime();
        c.set(Calendar.MONTH, Calendar.FEBRUARY);
        season[1] = c.getTime();
        c.set(Calendar.MONTH, Calendar.MARCH);
        season[2] = c.getTime();
    } else if (nSeason == 2) {//
        c.set(Calendar.MONTH, Calendar.APRIL);
        season[0] = c.getTime();
        c.set(Calendar.MONTH, Calendar.MAY);
        season[1] = c.getTime();
        c.set(Calendar.MONTH, Calendar.JUNE);
        season[2] = c.getTime();
    } else if (nSeason == 3) {//
        c.set(Calendar.MONTH, Calendar.JULY);
        season[0] = c.getTime();
        c.set(Calendar.MONTH, Calendar.AUGUST);
        season[1] = c.getTime();
        c.set(Calendar.MONTH, Calendar.SEPTEMBER);
        season[2] = c.getTime();
    } else if (nSeason == 4) {//
        c.set(Calendar.MONTH, Calendar.OCTOBER);
        season[0] = c.getTime();
        c.set(Calendar.MONTH, Calendar.NOVEMBER);
        season[1] = c.getTime();
        c.set(Calendar.MONTH, Calendar.DECEMBER);
        season[2] = c.getTime();
    }
    return season;
}