[Home] [Help]
PACKAGE BODY: APPS.IEM_MSTEMAIL_ACCOUNTS_PVT
Source
1 PACKAGE BODY IEM_MSTEMAIL_ACCOUNTS_PVT as
2 /* $Header: iemvmacb.pls 120.2 2005/08/03 16:18:36 appldev noship $*/
3
4 G_PKG_NAME CONSTANT varchar2(30) :='IEM_MSTEMAIL_ACCOUNTS_PVT ';
5
6 PROCEDURE encrypt_password(
7 P_Api_Version_Number IN NUMBER,
8 P_Init_Msg_List IN VARCHAR2,
9 P_Commit IN VARCHAR2,
10 p_email_account_id IN NUMBER,
11 p_raw_data IN VARCHAR2,
12 x_msg_count OUT NOCOPY NUMBER,
13 x_return_status OUT NOCOPY VARCHAR2,
14 x_msg_data OUT NOCOPY VARCHAR2)
15
16 IS
17 l_api_name VARCHAR2(255):='encrypt_password';
18 l_api_version_number NUMBER:=1.0;
19 l_encrypted_data VARCHAR2(4000);
20 l_encrypted_key VARCHAR2(4000);
21 l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
22 l_msg_count NUMBER := 0;
23 l_msg_data VARCHAR2(2000);
24
25 PASSWORD_NOT_ENCRYPTED EXCEPTION;
26
27 BEGIN
28 -- Standard Start of API savepoint
29 SAVEPOINT IEM_EncryptPassword_PVT;
30
31 -- Standard call to check for call compatibility.
32 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
33 p_api_version_number,
34 l_api_name,
35 G_PKG_NAME)
36 THEN
37 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
38 END IF;
39
40 -- Initialize message list if p_init_msg_list is set to TRUE.
41 IF FND_API.to_Boolean( p_init_msg_list ) THEN
42 FND_MSG_PUB.initialize;
43 END IF;
44
45 -- Initialize API return status to SUCCESS
46 x_return_status := FND_API.G_RET_STS_SUCCESS;
47
48 -- API begins
49 /*iem_utils_pvt.IEM_EncryptPassword(p_api_version_number => 1.0,
50 p_init_msg_list => FND_API.G_FALSE,
51 p_commit => FND_API.G_FALSE,
52 p_raw_data => p_raw_data,
53 x_encrypted_data => l_encrypted_data,
54 x_encrypted_key => l_encrypted_key,
55 x_msg_count => l_msg_count,
56 x_return_status => l_return_status,
57 x_msg_data => l_msg_data);
58
59 if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
60 raise PASSWORD_NOT_ENCRYPTED;
61 end if;
62
63 update iem_mstemail_accounts set user_password=l_encrypted_data, encrypt_key=l_encrypted_key where email_account_id=p_email_account_id;
64 */
65 fnd_vault.put('IEM', to_char(p_email_account_id), p_raw_data);
66
67 -- Standard Check Of p_commit.
68 IF FND_API.To_Boolean(p_commit) THEN
69 COMMIT WORK;
70 END IF;
71
72 -- Standard callto get message count and if count is 1, get message info.
73 FND_MSG_PUB.Count_And_Get
74 ( p_count => x_msg_count,
75 p_data => x_msg_data
76 );
77
78 EXCEPTION
79 /* WHEN PASSWORD_NOT_ENCRYPTED THEN
80 ROLLBACK TO IEM_EncryptPassword_PVT;
81 x_return_status := FND_API.G_RET_STS_ERROR ;
82 FND_MESSAGE.SET_NAME('IEM', 'IEM_PASSWORD_NOT_ENCRYPTED');
83
84 --FND_MESSAGE.ADD;
85 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
86 p_data => x_msg_data );
87 */
88 WHEN FND_API.G_EXC_ERROR THEN
89 ROLLBACK TO IEM_EncryptPassword_PVT;
90 x_return_status := FND_API.G_RET_STS_ERROR ;
91 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
92 p_data => x_msg_data );
93 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
94 ROLLBACK TO IEM_EncryptPassword_PVT;
95 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
96 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
97 p_data => x_msg_data );
98
99 WHEN OTHERS THEN
100 ROLLBACK TO IEM_EncryptPassword_PVT;
101 x_return_status := FND_API.G_RET_STS_ERROR;
102
103 IF FND_MSG_PUB.Check_Msg_Level
104 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
105 THEN
106 FND_MSG_PUB.Add_Exc_Msg
107 (G_PKG_NAME, l_api_name);
108 END IF;
109
110 FND_MSG_PUB.Count_And_Get
111 (p_count => x_msg_count,
112 p_data => x_msg_data
113 );
114 END encrypt_password;
115
116
117
118
119 PROCEDURE decrypt_password(
120 P_Api_Version_Number IN NUMBER,
121 P_Init_Msg_List IN VARCHAR2,
122 P_Commit IN VARCHAR2,
123 p_email_account_id IN NUMBER,
124 x_decrypted_data OUT NOCOPY VARCHAR2,
125 x_msg_count OUT NOCOPY NUMBER,
126 x_return_status OUT NOCOPY VARCHAR2,
127 x_msg_data OUT NOCOPY VARCHAR2)
128
129 IS
130 l_api_name VARCHAR2(255):='decrypt_password';
131 l_api_version_number NUMBER:=1.0;
132
133 l_decrypted_data VARCHAR2(200);
134
135 l_msg_index_out number;
136 -- l_input_data varchar2(2000);
137
138 l_return_status VARCHAR2(20) := FND_API.G_RET_STS_SUCCESS;
139 l_msg_count NUMBER := 0;
140 l_msg_data VARCHAR2(2000);
141
142 PASSWORD_NOT_DECRYPTED EXCEPTION;
143
144 BEGIN
145 -- Standard Start of API savepoint
146 SAVEPOINT IEM_DecryptPassword_PVT;
147
148 -- Standard call to check for call compatibility.
149 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
150 p_api_version_number,
151 l_api_name,
152 G_PKG_NAME)
153 THEN
154 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
155 END IF;
156
157 -- Initialize message list if p_init_msg_list is set to TRUE.
158 IF FND_API.to_Boolean( p_init_msg_list ) THEN
159 FND_MSG_PUB.initialize;
160 END IF;
161
162 -- Initialize API return status to SUCCESS
163 x_return_status := FND_API.G_RET_STS_SUCCESS;
164
165
166 /* select user_password, encrypt_key into l_user_password, l_encrypt_key from iem_mstemail_accounts where email_account_id=p_email_account_id;
167
168 iem_utils_pvt.IEM_DecryptPassword(p_api_version_number => 1.0,
169 p_init_msg_list => FND_API.G_FALSE,
170 p_commit => FND_API.G_FALSE,
171 p_input_data => l_user_password,
172 p_decrypted_key => l_encrypt_key,
173 x_decrypted_data => x_decrypted_data,
174 x_msg_count => l_msg_count,
175 x_return_status => l_return_status,
176 x_msg_data => l_msg_data);
177
178 if (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
179 raise PASSWORD_NOT_DECRYPTED;
180 end if;
181 */
182 x_decrypted_data := fnd_vault.get('IEM', to_char(p_email_account_id));
183
184 -- Standard Check Of p_commit.
185 IF FND_API.To_Boolean(p_commit) THEN
186 COMMIT WORK;
187 END IF;
188
189 -- Standard callto get message count and if count is 1, get message info.
190 FND_MSG_PUB.Count_And_Get
191 ( p_count => x_msg_count,
192 p_data => x_msg_data
193 );
194
195 IF (x_msg_count >= 1) THEN
196 --Only one error
197 FND_MSG_PUB.Get(p_msg_index => FND_MSG_PUB.G_FIRST,
198 p_encoded=>'F',
199 p_data=>x_msg_data,
200 p_msg_index_out=>l_msg_index_out);
201
202 END IF;
203
204 EXCEPTION
205 /* WHEN PASSWORD_NOT_DECRYPTED THEN
206 ROLLBACK TO IEM_DecryptPassword_PVT;
207 x_return_status := FND_API.G_RET_STS_ERROR ;
208 FND_MESSAGE.SET_NAME('IEM', 'IEM_PASSWORD_NOT_DECRYPTED');
209
210 --FND_MESSAGE.ADD;
211 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
212 p_data => x_msg_data );
213 */
214 WHEN FND_API.G_EXC_ERROR THEN
215 ROLLBACK TO IEM_DecryptPassword_PVT;
216 x_return_status := FND_API.G_RET_STS_ERROR ;
217 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
218 p_data => x_msg_data );
219
220 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
221 ROLLBACK TO IEM_DecryptPassword_PVT;
222 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
223 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
224 p_data => x_msg_data );
225
226 WHEN OTHERS THEN
227
228 ROLLBACK TO IEM_DecryptPassword_PVT;
229 x_return_status := FND_API.G_RET_STS_ERROR;
230 IF FND_MSG_PUB.Check_Msg_Level
231 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
232 THEN
233 FND_MSG_PUB.Add_Exc_Msg
234 (G_PKG_NAME, l_api_name);
235 END IF;
236
237 FND_MSG_PUB.Count_And_Get
238 (p_count => x_msg_count,
239 p_data => x_msg_data
240 );
241 END decrypt_password;
242
243
244 END IEM_MSTEMAIL_ACCOUNTS_PVT;