org.jboss.aerogear.unifiedpush.dao.PushApplicationDao Maven / Gradle / Ivy
/**
* JBoss, Home of Professional Open Source
* Copyright Red Hat, Inc., and individual contributors.
*
* 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 org.jboss.aerogear.unifiedpush.dao;
import java.util.List;
import java.util.Map;
import org.jboss.aerogear.unifiedpush.api.PushApplication;
import org.jboss.aerogear.unifiedpush.dto.Count;
public interface PushApplicationDao extends GenericBaseDao {
/**
* Finder that returns all pushApplication object for the given owner/developer.
*
* @param loginName the username
* @param page number of the page for pagination
* @param pageSize the size of the page
*
* @return list of push applications
*/
PageResult findAllForDeveloper(String loginName, Integer page, Integer pageSize);
/**
* Finder that returns a list, containing all pushApplication ids for the given owner/developer.
*
* @param loginName the username
*
* @return list of push application ids
*/
List findAllPushApplicationIDsForDeveloper(String loginName);
/**
* Finder that returns an actual PushApplicationEntity, identified by its ID and its owner/developer.
*
* @param loginName the username
* @param pushApplicationID the push application id
*
* @return push application object or null
*/
PushApplication findByPushApplicationIDForDeveloper(String pushApplicationID, String loginName);
/**
* Finder that returns an actual PushApplicationEntity, identified by its ID.
*
* @param pushApplicationID the push application id
*
* @return push application object or null
*/
PushApplication findByPushApplicationID(String pushApplicationID);
Map countInstallationsByType(String pushApplicationID);
/**
* Returns total number of PushApplications for given user
*
* @param name the username
*
* @return number of application for the given user
*/
long getNumberOfPushApplicationsForDeveloper(String name);
/**
* Return push applications that are owning the given variants.
*
* @param variantIDs list of variant ids
*
* @return list of push applications
*/
List findByVariantIds(List variantIDs);
//Admin queries
/**
* Finder that returns an actual PushApplicationEntity, identified by its ID and its owner/developer.
*
* @param pushApplicationID the push application id
*
* @return push application or null
*/
PushApplication findAllByPushApplicationID(String pushApplicationID);
PageResult findAll(Integer page, Integer pageSize);
long getNumberOfPushApplicationsForDeveloper();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy