DBA Data[Home] [Help]

PACKAGE BODY: APPS.CCT_MIGRATE_MW

Source


1 PACKAGE BODY CCT_MIGRATE_MW as
2 /* $Header: cctmigmb.pls 115.3 2004/06/22 02:47:02 gvasvani noship $ */
3 procedure migrate_middleware(p_mw1_id IN NUMBER,p_mw2_id IN NUMBER,p_name IN VARCHAR2 )
4 IS
5 l_mw_id NUMBER;
6 BEGIN
7      l_mw_id := '';
8      if (p_name is not null) then
9        begin
10        select middleware_id into l_mw_id from cct_middlewares
11        where middleware_type_id= p_mw1_id
12        and config_name=p_name
13        and nvl(f_deletedflag,'Y') <> 'D';
14        Exception
15        WHEN OTHERS THEN
16          return; --Given Config Name doesn't exists.
17        end;
18 
19        update cct_middlewares set middleware_type_id=p_mw2_id
20        where middleware_type_id=p_mw1_id
21        and config_name=p_name;
22      else
23        update cct_middlewares set middleware_type_id=p_mw2_id
24        where middleware_type_id=p_mw1_id;
25 
26      end if;
27      delete_params(p_mw1_id,p_mw2_id,l_mw_id);
28      update_params(p_mw1_id,p_mw2_id,l_mw_id);
29 
30      --Delete older middleware type id, so it doesn't appear in Admin UI.
31      if (l_mw_id is null) then
32        delete cct_middleware_types
33 	     where middleware_type_id=p_mw1_id;
34      end if;
35 END;
36 
37 procedure delete_params(p_mw1_id IN NUMBER,p_mw2_id IN NUMBER, p_mw_id IN NUMBER )
38 IS
39 BEGIN
40  SAVEPOINT CCT_MIDDLEWARE_DELETE_SAV;
41 
42  if (p_mw_id is null) then
43    delete from cct_middleware_values where nvl(f_deletedflag,'Y') <> 'D'
44    and middleware_param_id IN
45    (
46    select mw.middleware_param_id
47    from cct_middleware_params mw
48    where middleware_type_id=p_mw1_id and nvl(mw.f_deletedflag,'Y') <> 'D'
49 
50    minus
51 
52    select mw1.middleware_param_id
53          from cct_middleware_params mw1, cct_middleware_params mw2
54          where mw1.middleware_type_id=p_mw1_id and mw2.middleware_type_id=p_mw2_id
55          and mw1.name=mw2.name
56          and nvl(mw1.f_deletedflag,'Y') <> 'D'
57    ) ;
58  else
59    delete from cct_middleware_values where middleware_id=p_mw_id and  nvl(f_deletedflag,'Y') <> 'D'
60    and middleware_param_id IN
61    (
62    select mw.middleware_param_id
63    from cct_middleware_params mw
64    where middleware_type_id=p_mw1_id and nvl(mw.f_deletedflag,'Y') <> 'D'
65 
66    minus
67 
68    select mw1.middleware_param_id
69          from cct_middleware_params mw1, cct_middleware_params mw2
70          where mw1.middleware_type_id=p_mw1_id and mw2.middleware_type_id=p_mw2_id
71          and mw1.name=mw2.name
72          and nvl(mw1.f_deletedflag,'Y') <> 'D'
73 
74    ) ;
75  end if;
76 EXCEPTION
77       WHEN OTHERS THEN
78           rollback TO SAVEPOINT CCT_MIDDLEWARE_DELETE_SAV;
79           raise_application_error(-20011, sqlerrm || 'Could not delete middlewares')  ;
80 END;
81 
82 procedure update_params(p_mw1_id IN NUMBER,p_mw2_id IN NUMBER, p_mw_id IN NUMBER )
83 IS
84     l_mw1_param_id cct_middleware_params.middleware_param_id%type;
85     l_mw2_param_id cct_middleware_params.middleware_param_id%type;
86 
87     CURSOR c_mw IS
88            select mw1.middleware_param_id, mw2.middleware_param_id
89            from cct_middleware_params mw1, cct_middleware_params mw2
90            where mw1.middleware_type_id=p_mw1_id and mw2.middleware_type_id=p_mw2_id
91              and mw1.name=mw2.name
92              and nvl(mw1.f_deletedflag,'Y') <> 'D';
93    BEGIN
94         SAVEPOINT CCT_MIDDLEWARE_UPDATE_SAV;
95         OPEN c_mw;
96         LOOP
97           FETCH c_mw INTO l_mw1_param_id, l_mw2_param_id;
98           IF c_mw%NOTFOUND THEN
99             CLOSE c_mw;
100             exit;
101           ELSIF (p_mw_id is null) then
102             update cct_middleware_values Set middleware_param_id = l_mw2_param_id
103             where middleware_param_id = l_mw1_param_id  and nvl(f_deletedflag,'Y') <> 'D' ;
104           ELSE
105             update cct_middleware_values Set middleware_param_id = l_mw2_param_id
106             where middleware_id=p_mw_id and middleware_param_id = l_mw1_param_id
107                    and nvl(f_deletedflag,'Y') <> 'D' ;
108           END IF;
109        END LOOP;
110 
111    EXCEPTION
112       WHEN OTHERS THEN
113           rollback TO SAVEPOINT CCT_MIDDLEWARE_UPDATE_SAV;
114           raise_application_error(-20012, sqlerrm || 'Could not update middlewares')  ;
115 end;
116 
117 procedure update_agent_params(p_mw1_id IN NUMBER,p_mw2_id IN NUMBER, p_mw_id IN NUMBER )
118 IS
119     l_mw1_param_id jtf_rs_resource_values.resource_param_id%type;
120     l_mw2_param_id jtf_rs_resource_values.resource_param_id%type;
121 
122     CURSOR c_mw IS
123            select mw1.resource_param_id, mw2.resource_param_id
124            from jtf_rs_resource_params mw1, jtf_rs_resource_params mw2
125            where mw1.param_type=p_mw1_id and mw2.param_type=p_mw2_id
126              and mw1.name=mw2.name;
127    BEGIN
128         SAVEPOINT CCT_MIDDLEWARE_UPDATE_AGT_SAV;
129         OPEN c_mw;
130         LOOP
131           FETCH c_mw INTO l_mw1_param_id, l_mw2_param_id;
132           IF c_mw%NOTFOUND THEN
133             CLOSE c_mw;
134             exit;
135           ELSIF (p_mw_id is null) then
136             update jtf_rs_resource_values Set resource_param_id = l_mw2_param_id
137             where resource_param_id = l_mw1_param_id  ;
138           ELSE
139             update jtf_rs_resource_values Set resource_param_id = l_mw2_param_id
140             where value_type=p_mw_id and resource_param_id = l_mw1_param_id      ;
141           END IF;
142        END LOOP;
143 
144    EXCEPTION
145       WHEN OTHERS THEN
146           rollback TO SAVEPOINT CCT_MIDDLEWARE_UPDATE_AGT_SAV;
147           raise_application_error(-20012, sqlerrm || 'Could not update agent paras')  ;
148 end;
149 
150 END CCT_MIGRATE_MW;