/*
* Copyright (C) 2014-2015 Stichting Akvo (Akvo Foundation)
*
* This file is part of Akvo FLOW.
*
* Akvo FLOW is free software: you can redistribute it and modify it under the terms of
* the GNU Affero General Public License (AGPL) as published by the Free Software Foundation,
* either version 3 of the License or any later version.
*
* Akvo FLOW is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU Affero General Public License included below for more details.
*
* The full license text can also be seen at <http://www.gnu.org/licenses/agpl.html>.
*/
package org.waterforpeople.mapping.app.web.dto;
import java.util.HashSet;
import java.util.Set;
import javax.servlet.http.HttpServletRequest;
public class DeviceNotificationRequest extends LocationBeaconRequest {
private static final long serialVersionUID = 287773188257035166L;
private static final String SURVEYS_PARAM = "formId";
private Set<Long> surveyIds;
public Set<Long> getSurveyIds() {
return surveyIds;
}
@Override
protected void populateFields(HttpServletRequest req) throws Exception {
super.populateFields(req);
surveyIds = new HashSet<>();
String[] args = req.getParameterValues(SURVEYS_PARAM);
if (args != null) {
for (String sid : args) {
try {
surveyIds.add(Long.parseLong(sid));
} catch (NumberFormatException e) {
// ignore non-valid keys
}
}
}
}
@Override
protected void populateErrors() {
// intentionally overriding LocationBeaconRequest checks
}
}