Java tutorial
/* * Copyright 2014 Leonardo Rossetto * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.github.leonardoxh.temporeal.app.service; import android.content.Intent; import com.github.leonardoxh.temporeal.app.model.Notice; import com.github.leonardoxh.temporeal.app.model.dao.NoticeDao; import com.github.leonardoxh.temporeal.app.utils.JsonUtils; import com.squareup.okhttp.Response; import java.io.IOException; import java.util.List; /** * Este e o nosso servico que busca as noticias do servidor * faz a requisicao e salva os dados */ public class NoticeService extends AbstractService { public static final String BROADCAST_RESULT_ACTION = "com.github.leonardoxh.temporeal.NOTICE_RECEIVER"; public NoticeService() { super(NoticeService.class.getSimpleName()); } @Override protected void onHandleIntent(Intent intent) { Response response = makeRequest(Constants.NOTICE_ENDPOINT, null); if (response.isSuccessful()) { try { List<Notice> notices = JsonUtils.listFromJson(response.body().string(), Notice.class); if (!notices.isEmpty()) { NoticeDao noticeDao = new NoticeDao(this); noticeDao.saveAllNotices(notices); } } catch (IOException e) { /* Podemos simplesmente ignorar essa exception * por que teremos uma falha de leitura, entao na * proxima sincronizacao tudo sera sincronizado */ e.printStackTrace(); } } } }