forked from openmrs/openmrs-core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ProviderDAO.java
133 lines (110 loc) · 3.6 KB
/
ProviderDAO.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
/**
* This Source Code Form is subject to the terms of the Mozilla Public License,
* v. 2.0. If a copy of the MPL was not distributed with this file, You can
* obtain one at http:https://mozilla.org/MPL/2.0/. OpenMRS is also distributed under
* the terms of the Healthcare Disclaimer located at http:https://openmrs.org/license.
*
* Copyright (C) OpenMRS Inc. OpenMRS is a registered trademark and the OpenMRS
* graphic logo is a trademark of OpenMRS Inc.
*/
package org.openmrs.api.db;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import org.openmrs.Person;
import org.openmrs.Provider;
import org.openmrs.ProviderAttribute;
import org.openmrs.ProviderAttributeType;
import org.openmrs.api.ProviderService;
/**
* Data Access function for Provider
*
* @since 1.9
*/
public interface ProviderDAO {
/**
* Gets all Providers
*
* @param includeRetired - whether or not to include retired Provider
*/
List<Provider> getAllProviders(boolean includeRetired);
/**
* Saves/Updates a given Provider
*/
public Provider saveProvider(Provider provider);
/**
* deletes an exisiting Provider
*/
public void deleteProvider(Provider provider);
/**
* @param id
* @return Provider gets the Provider based on id
*/
public Provider getProvider(Integer id);
/**
* @param uuid
* @return Provider gets the Provider based on uuid
*/
public Provider getProviderByUuid(String uuid);
/**
* @see ProviderService#getProvidersByPerson( Person, boolean )
*/
public Collection<Provider> getProvidersByPerson(Person person, boolean includeRetired);
/**
* @param name
* @param serializedAttributeValues
* @param start
* @param length
* @param includeRetired
* @return List of Providers
*/
public List<Provider> getProviders(String name, Map<ProviderAttributeType, String> serializedAttributeValues,
Integer start, Integer length, boolean includeRetired);
/**
* @param name
* @param includeRetired
* @return Count of providers satisfying the given query
*/
public Long getCountOfProviders(String name, boolean includeRetired);
/**
* @see ProviderService#getAllProviderAttributeTypes(boolean)
* @see ProviderService#getAllProviderAttributeTypes()
*/
List<ProviderAttributeType> getAllProviderAttributeTypes(boolean includeRetired);
/**
* @see ProviderService#getProviderAttributeType(Integer)
*/
ProviderAttributeType getProviderAttributeType(Integer providerAttributeTypeId);
/**
* @see ProviderService#getProviderAttributeTypeByUuid(String)
*/
ProviderAttributeType getProviderAttributeTypeByUuid(String uuid);
/**
* @see ProviderService#getProviderAttributeTypeByName(String)
*/
ProviderAttributeType getProviderAttributeTypeByName(String name);
/**
* @see ProviderService#saveProviderAttributeType(ProviderAttributeType)
*/
ProviderAttributeType saveProviderAttributeType(ProviderAttributeType providerAttributeType);
/**
* @see ProviderService#purgeProviderAttributeType(ProviderAttributeType)
*/
void deleteProviderAttributeType(ProviderAttributeType providerAttributeType);
/**
* @see ProviderService#getProviderAttribute(Integer)
*/
ProviderAttribute getProviderAttribute(Integer providerAttributeID);
/**
* @see ProviderService#getProviderAttributeByUuid(String)
*/
ProviderAttribute getProviderAttributeByUuid(String uuid);
/**
* @see ProviderService#isProviderIdentifierUnique(Provider)
*/
public boolean isProviderIdentifierUnique(Provider provider) throws DAOException;
/**
* @see ProviderService#getProviderByIdentifier(String)
*/
public Provider getProviderByIdentifier(String identifier);
}