use of org.hisp.dhis.client.sdk.models.event.Event in project pictureapp by EyeSeeTea.
the class SdkPullController method pullEvent.
/**
* Pull a event uids
* It is not working at this moment
*/
private void pullEvent(String uid) {
Set events = new HashSet();
events.add(uid);
D2.events().pull(events).asObservable().subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Action1<List<Event>>() {
@Override
public void call(List<Event> events) {
Log.d(TAG, "Listed events: " + events.size());
}
}, new Action1<Throwable>() {
@Override
public void call(Throwable throwable) {
errorOnPull = true;
Log.d(TAG, "Error pulling events: ");
throwable.printStackTrace();
showException("Error pulling events");
}
});
}
use of org.hisp.dhis.client.sdk.models.event.Event in project pictureapp by EyeSeeTea.
the class EventExtended method getDataValues.
public List<DataValueExtended> getDataValues() {
Event eventModel = SdkQueries.getEvent(event.getUId());
List<TrackedEntityDataValue> trackedEntityDataValues = eventModel.getDataValues();
List<DataValueExtended> dataValueExtendeds = new ArrayList<>();
for (TrackedEntityDataValue trackedEntityDataValue : trackedEntityDataValues) {
dataValueExtendeds.add(new DataValueExtended(TrackedEntityDataValueFlow.MAPPER.mapToDatabaseEntity(trackedEntityDataValue)));
}
return dataValueExtendeds;
}
use of org.hisp.dhis.client.sdk.models.event.Event in project pictureapp by EyeSeeTea.
the class PullDhisSDKDataSource method pullData.
public void pullData(PullFilters pullFilters, List<OrganisationUnit> organisationUnits, IDataSourceCallback<List<Event>> callback) {
boolean isNetworkAvailable = isNetworkAvailable();
if (!isNetworkAvailable) {
callback.onError(new NetworkException());
} else {
try {
List<Event> events = new ArrayList<>();
for (OrganisationUnit organisationUnit : organisationUnits) {
Scheduler pullEventsThread = Schedulers.newThread();
EventFilters eventFilters = new EventFilters();
eventFilters.setStartDate(pullFilters.getStartDate());
eventFilters.setEndDate(pullFilters.getEndDate());
eventFilters.setMaxEvents(pullFilters.getMaxEvents());
eventFilters.setOrganisationUnitUId(organisationUnit.getUId());
mPullDhisSDKDataSourceStrategy.setEventFilters(eventFilters);
List<Event> eventsByOrgUnit = D2.events().pull(eventFilters).subscribeOn(pullEventsThread).observeOn(pullEventsThread).toBlocking().single();
events.addAll(eventsByOrgUnit);
}
callback.onSuccess(events);
} catch (Exception e) {
callback.onError(e);
}
}
}
use of org.hisp.dhis.client.sdk.models.event.Event in project pictureapp by EyeSeeTea.
the class SurveyChecker method getEvents.
public static List<EventExtended> getEvents(JsonNode jsonNode) {
TypeReference<List<Event>> typeRef = new TypeReference<List<Event>>() {
};
List<Event> events;
try {
if (jsonNode.has("events")) {
ObjectMapper objectMapper = new ObjectMapper().registerModule(new JodaModule());
events = objectMapper.readValue(jsonNode.get("events").traverse(), typeRef);
} else {
events = new ArrayList<>();
}
} catch (IOException e) {
events = new ArrayList<>();
e.printStackTrace();
}
List<EventExtended> eventExtendedList = new ArrayList<>();
for (Event event : events) {
EventFlow eventFlow = EventFlow.MAPPER.mapToDatabaseEntity(event);
EventExtended eventExtended = new EventExtended(eventFlow);
if (event.getDataValues() != null && event.getDataValues().size() > 0) {
List<TrackedEntityDataValueFlow> trackedEntityDataValueFlows = TrackedEntityDataValueFlow.MAPPER.mapToDatabaseEntities(event.getDataValues());
eventExtended.setDataValuesInMemory(trackedEntityDataValueFlows);
}
eventExtendedList.add(eventExtended);
}
return eventExtendedList;
}
Aggregations