Canigó (framework)
કેનિગો એ જનરલિટાટ ડી કેટાલુનીયાના જાવા EE માળખા માટે પસંદ કરેલું નામ છે. હેતુ અને સ્થાપત્ય કેનિગોને "જનરલિટાટ ડી કેટાલુનીયાની કોર્પોરેટ સિસ્ટમો અને વિભાગો માટે વેબ એપ્લિકેશનોના વિકાસ અને અમલ માટે સામાન્ય તકનીકી માળખા" તરીકે વ્યાખ્યાયિત કરવામાં આવે છે. તે વિવિધ કાર્યોને આવરી લે છેઃ જાવા EE એપ્લિકેશન બિલ્ડિંગ માટે એક સામાન્ય આર્કિટેક્ચર. કાર્યસ્થળ, દસ્તાવેજીકરણ, સમર્થન અને તેના ઘટકોની જાળવણી પૂરી પાડે છે. જાવા EE અંતર્ગત રહેલી જટિલતાને સરળ બનાવે છે, જે સંદર્ભ માળખું પ્રદાન કરે છે. સમગ્ર ઓપન સોર્સ સમુદાયમાં વાસ્તવિક ધોરણોને ધ્યાનમાં રાખીને ઉકેલ પ્રદાન કરે છે. એક ખુલ્લો ઉકેલ પ્રદાન કરે છે જે ઓછા ખર્ચ સાથે સોફ્ટવેરના કોઈપણ ભાગને ઉમેરવા અને વિનિમય કરવાની સંભાવનાને સક્ષમ કરે છે. જનરલિટાટ ડી કેટાલુનીયાની કોર્પોરેટ સેવાઓ સાથે આંતરજોડાણ ઉકેલ પ્રદાન કરે છે. કેનિગોનું આર્કિટેક્ચર મોડલ-વ્યૂ-કંટ્રોલર પર આધારિત છે. એક અમૂર્ત પ્રક્રિયા છે જે એપ્લિકેશન તર્કશાસ્ત્રને ત્રણ મુખ્ય ઘટકોમાં વિભાજિત કરવાની મંજૂરી આપે છે જે ટીમની વિવિધ ભૂમિકાઓ દ્વારા વિકસાવવામાં સક્ષમ છે. વાસ્તવમાં કેનિગોનું આર્કિટેક્ચર, એમવીસી સ્ટ્રક્ચર્ડ ફ્રેમવર્ક તરીકે, 3 સ્તરો અને 4 ક્રોસ-કટિંગ મોડ્યુલોમાં વહેંચાયેલું છેઃ લેયર્સ પ્રેઝન્ટેશન લેયર બિઝનેસ લોજિક લેયર ડેટા પર્સિસ્ટન્સ/ઇન્ટિગ્રેશન લેયર્સ મોડ્યુલો ફ્રેમવર્ક કોર સિક્યુરિટી મોડ્યુલો સપોર્ટ મોડ્યુલ ઓપરેશન મોડ્યુલ કેનિગોનું મોડ્યુલર માળખું વિકાસકર્તાઓને પ્રોજેક્ટ જરૂરિયાતોને આવરી લેવા માટે માત્ર જરૂરી મોડ્યુલોનો ઉપયોગ કરવાનો વિકલ્પ આપે છે. તે મોડ્યુલો ઇન્ટરફેસો દ્વારા વ્યાખ્યાયિત કરવામાં આવે છે, જે તેમને પસંદ કરેલા અમલીકરણથી અલગ પાડે છે. કેનિગો શ્રેણીબદ્ધ સંસાધનો, જે. પી. એ. તરીકે API ના એકીકરણ અને ઓપન સોર્સ પેકેજો (સ્પ્રિંગ, સ્વેગર,.) પર આધારિત છે. તે તે પેકેજો માટે વિસ્તરણ પણ પ્રદાન કરે છે, જેમાં ફરીથી વાપરી શકાય તેવા ઘટકોની વિશાળ સૂચિ ઉમેરવામાં આવે છે. સૌથી મહત્વપૂર્ણ સ્થાપત્ય આધારોમાંનો એક છે REST API નો ઉપયોગ કરીને ફ્રન્ટએન્ડ અને બેકએન્ડને અલગ કરવું. આ આર્કિટેક્ચર સ્વતંત્ર વિકાસ ટીમોને ફ્રન્ટએન્ડ અને બેકએન્ડ પર કામ કરવાની મંજૂરી આપે છે. ફ્રેમવર્કમાં નીચે દર્શાવેલ બ્લોકનો સમાવેશ થાય છેઃ ફ્રેમવર્ક આર્કિટેક્ચર બેઝ ઘટકો સ્પ્રિંગ એ જાવા પ્લેટફોર્મ માટે લખાયેલ ઓપન સોર્સ ફ્રેમવર્ક છે. પ્રથમ સંસ્કરણ રોડ જ્હોન્સન દ્વારા ઓક્ટોબર 2002માં બનાવવામાં આવ્યું હતું અને છેલ્લું પ્રકાશન સંસ્કરણ 5.0.9 છે, જે સપ્ટેમ્બર 2018ના પ્રથમ સપ્તાહમાં પ્રકાશિત થયું હતું. કેનિગો વેબ એપ્લિકેશન્સના રૂપરેખાંકનમાં મદદ કરવા માટે રચાયેલ છે, અને વિવિધ ટુકડાઓમાં (સરળતાથી વિનિમયક્ષમ અને તેમની વચ્ચે દૃશ્યમાન), સેવા એકીકરણ, સુરક્ષા સેવાઓ, ડેટાબેઝ જોડાણ, વ્યવહારક્ષમતા વગેરેમાં સિસ્ટમોના નિર્માણને સરળ બનાવવા માટે પણ રચાયેલ છે. સ્પ્રિંગ દ્વારા બાહ્ય માહિતી મેળવવી એ એક સરળ કાર્ય છે કારણ કે આ માળખું સંસાધનોને જાતે જ સંચાલિત કરે છે. તેમાં આધાર API પણ છે અને તે જાવા ઉદ્યોગની મોટાભાગની ડેટા એક્સેસ તકનીકોને સહન કરવામાં સક્ષમ છે જેમ કેઃ જે. ડી. બી. સી., હાઇબરનેટ, જે. પી. એ., જે. ડી. ઓ. અથવા આઈબેટિસ. કેનિગોના આર્કિટેક્ચરનો મુખ્ય આધાર એ સંપૂર્ણપણે સંકલિત જૂથ છે, જે મોડ્યુલર પણ છે, જે જાવા વેબ એપ્લિકેશન્સમાં શ્રેષ્ઠ પદ્ધતિઓ વિકસાવી રહી છે. આ વાસ્તવિક ઘટકો છે જે સિસ્ટમની રચના કરે છેઃ સ્વેગર એ એક ઓપન સોર્સ સોફ્ટવેર માળખું છે જે સાધનોની વિશાળ ઇકોસિસ્ટમ દ્વારા સમર્થિત છે જે વિકાસકર્તાઓને RESTફુલ વેબ સેવાઓની રચના, નિર્માણ, દસ્તાવેજીકરણ અને વપરાશ કરવામાં મદદ કરે છે. જ્યારે મોટાભાગના વપરાશકર્તાઓ સ્વેગરને સ્વેગર UI ટૂલ દ્વારા ઓળખે છે, ત્યારે સ્વેગર ટૂલસેટમાં સ્વચાલિત દસ્તાવેજીકરણ, કોડ જનરેશન અને ટેસ્ટ કેસ જનરેશન માટે સપોર્ટ શામેલ છે. કેન્દ્રીયકૃત ઓબ્જેક્ટ અને સર્વિસ કન્ટેનર તરીકે સ્પ્રિંગ4 ફ્રેમવર્ક, જે XML ફાઇલો અથવા જાવા એનોટેશન્સ દ્વારા સંપૂર્ણપણે રૂપરેખાંકિત કરી શકાય છે. અવલંબન ઈન્જેક્શન બિન-ઘુસણખોરી અભિગમ સાથે એપ્લિકેશનના કોડમાંથી વસ્તુઓની ગોઠવણીને મંજૂરી આપે છે. તે રૂપરેખાંકનો અને સંસાધનોના સ્થાનિકીકરણ માટે સમર્પિત એપ્લિકેશનના કોડને ઘટાડે છે. તે વર્ગોને બદલે ઇન્ટરફેસો સામે પ્રોગ્રામિંગ જેવી શ્રેષ્ઠ પ્રથાઓને પણ સરળ બનાવે છે, જે સેવાઓને અનકપલ કરવાની મંજૂરી આપે છે અને બીજા માટે આપેલ અમલીકરણમાં ઝડપી ફેરફાર કરે છે. તે એસ્પેક્ટ ઓરિએન્ટેડ પ્રોગ્રામિંગના ઉપયોગ દ્વારા ચોક્કસ API નો ઉપયોગ કર્યા વિના વ્યવહારોનું સંચાલન કરવાની પણ મંજૂરી આપે છે. જે. પી. એ. જાવા રીલેશ્નલ ડેટા બેઝનો નકશો બનાવવા માટે પી. ઓ. જે. ઓ. પર આધારિત સાતત્ય મોડેલ પ્રદાન કરે છે. મોંગોડીબી, સૌથી લોકપ્રિય બિન-સંબંધાત્મક ડેટાબેઝ પણ સમર્થિત છે. સોર્સ કોડમાં ફેરફાર કર્યા વિના એપ્લિકેશનના ઇવેન્ટ ઇન્ટરસેપ્શન માટે એઓપી (એસ્પેક્ટ ઓરિએન્ટેડ પ્રોગ્રામિંગ). ફ્રેમવર્ક કોર આ મોડ્યુલ એ ફ્રેમવર્કનું મૂળ છે, અહીં તે છે જ્યાં મુખ્ય સુવિધાઓ સ્થિત છેઃ બહુ-પર્યાવરણ રૂપરેખાંકનઃ સ્પ્રિંગ 3 દ્વારા પ્રદાન કરાયેલ પ્રોપર્ટી પ્લેસહોલ્ડર પર આધારિત છે. તફાવત એ છે કે તે કોઈપણ વધારાના કઠોળ અથવા ગુણધર્મોની ગોઠવણી વિના પર્યાવરણ આધારિત ગુણધર્મોના અસ્તિત્વને મંજૂરી આપે છે. બહુ-ભાષા (i18n): તેનો ઉદ્દેશ બહુવિધ ભાષાઓના સમર્થનને સરળ બનાવીને એપ્લિકેશન વિકાસના તબક્કામાં મદદ કરવાનો છે. ટ્રેસ સર્વિસઃ લોગ4જે પર આધારિત. તે ટ્રેસિંગ સ્તર, આઉટપુટ, લઘુતમ ટ્રેસ સ્તર, આઉટપુટ ફોર્મેટ, સંદર્ભ માહિતીની વ્યાખ્યાને મંજૂરી આપે છે. અપવાદ સેવાઃ વિનંતીના અમલ દરમિયાન કોઈપણ ભૂલ અસ્તિત્વ વિશેની માહિતી પેદા કરે છે. કેનિગો મૂળભૂત રીતે અપવાદોની શ્રેણી પ્રદાન કરે છે (બેઝએક્સસેપ્શન, કોરએક્સસેપ્શન,.). તેમાં "ટ્રાય-કેચ" નો વધુ પડતો ઉપયોગ ટાળવા માટે એક અપવાદ અવરોધન પદ્ધતિ પણ છે. સુરક્ષા મોડ્યુલ તે વપરાશકર્તાની અધિકૃતતા અને પ્રમાણીકરણ એપ્લિકેશન્સ એક્સેસ મેનેજમેન્ટ સિસ્ટમ છે. સુરક્ષા મોડ્યુલઃ વસંત સુરક્ષા 4. x પર આધારિત. તે એપ્લિકેશન વપરાશકર્તાઓની અધિકૃતતા અને પ્રમાણીકરણનું સંચાલન કરવામાં સક્ષમ છે. સુરક્ષા બેકએન્ડઃ સુરક્ષા સેવા GICAR, SACE, LDAP, ડેટા બેઝ અને સ્મૃતિ સાથે સંકલિત છે. પ્રેઝન્ટેશન (UI) મોડ્યુલ કેનિગો 3.2.0 થી, JSF ને પ્રેઝન્ટેશન લેયર ટેકનોલોજી તરીકે નાપસંદ કરવામાં આવ્યું છે. પ્રસ્તુતિકરણ સ્તરની જવાબદારી માળખાની બહાર કોણીય અથવા પ્રતિક્રિયા જેવી ફ્રન્ટ-એન્ડ તકનીકો પર વિશેષતા ધરાવતી અન્ય ટીમોને સોંપવામાં આવી છે. એકીકરણ મોડ્યુલ તેનો ધ્યેય જનરલિટાટ ડી કેટાલુન્યા દ્વારા પ્રદાન કરવામાં આવતી વિવિધ સેવાઓની સરળ પહોંચ પ્રદાન કરવાનો છે. પી. આઈ. સી. એ.: 'પ્લાટાફોર્મા ડી' ઈન્ટેગ્રેસીઓ આઈ કોલ · લેબરસીઓ એડમિનિસ્ટ્રેટિવા '(પી. આઈ. સી. એ.) ને ઍક્સેસ કરવા માટે એકીકરણ જાવા ઈન્ટરફેસ પ્રદાન કરે છે. આ મોડ્યુલ સિંક્રનસ અને એસિંક્રોનસ વિનંતીઓ ચલાવવા માટે સક્ષમ છે. GECAT: આ મોડ્યુલમાં Gecatની SAP સેવા દ્વારા ઓફર કરાયેલ ભરતિયું વ્યવસ્થાપન માટે કાર્યાત્મકતાનો સમૂહ છે. પી. એસ. આઈ. એસ.: તે કેટસર્ટ દ્વારા ઓફર કરવામાં આવતી ડિજિટલ હસ્તાક્ષર અને ડિજિટલ પ્રમાણપત્ર સેવા છે. એસ. એ. આર. સી. એ. ટી. એ આયોજિત વિનંતીઓ માટે વેબ સર્વિસીઝ, એફ. ટી. પી./એસ. એફ. ટી. પી. દ્વારા <આઇ. ડી. 1> દ્વારા પ્રદાન કરવામાં આવતી સેવાઓને અમલમાં મૂકવાની પદ્ધતિઓની શ્રેણી છે. દસ્તાવેજીઃ વપરાશ દસ્તાવેજી કાર્યોને સક્ષમ કરે છે જેમ કે દસ્તાવેજ ફાઇલિંગ અને પુનઃપ્રાપ્ત કરવું, તે ફોલ્ડર્સ અને મેટાડેટાનું સંચાલન કરવામાં પણ સક્ષમ છે. એન. ટી.: પી. આઈ. સી. એ. માટે એક કાર્યાત્મક કનેક્ટર છે જે જનરલિટાટ ડી કેટાલુનીયાના ટેલિમેટિકલ સૂચનાઓના ઉપયોગને સરળ બનાવે છે. એન્ટીવાયરસઃ સીટીટીઆઈ (ઇન્ફોર્મેશન ટેક્નોલોજીસ એન્ડ ટેલિકમ્યુનિકેશન્સ સેન્ટર) ફાઇલ સ્કેનીંગ સિસ્ટમનું એકીકરણ છે. એસએપીઃ જનરલિટાટ ડી કેટાલુનીયાના એસએપી બેકએન્ડને ઍક્સેસ કરવા માટે તે એક સરળ ઇન્ટરફેસ છે. વેબ સેવાઓઃ કેનિગો 3 પાસે મૂળ વેબ સેવાઓ મોડ્યુલ નથી. જાવા સાથે વેબ સેવાઓની નિકાસ, પ્રકાશન અને વપરાશ કેવી રીતે કરવો તે વિશે સંપૂર્ણ દસ્તાવેજી માર્ગદર્શિકા છે. કેનિગો 3 સ્પ્રિંગ ડબલ્યુએસ, જેક્સબ અને ઓએક્સએમના ઉપયોગને પ્રોત્સાહન આપે છે. કતારોઃ કેનિગો 3 પાસે કતાર વ્યવસ્થાપન મોડ્યુલ નથી. કતારમાંથી સંદેશાઓ કેવી રીતે પેદા કરવા અને તેનો ઉપયોગ કેવી રીતે કરવો તે વિશે માર્ગદર્શિકા છે. સ્પ્રિંગ જેએમએસનો ઉપયોગ કરવાની ભલામણ કરવામાં આવે છે. દ્રઢતા મોડ્યુલ આ મોડ્યુલ એપ્લિકેશન અને ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમ્સ વચ્ચે ડેટા દ્રઢતા અને પુનઃપ્રાપ્તિ સાથે એપ્લિકેશનને સક્ષમ કરે છે. જેપીએઃ જાવા પર્સિસ્ટન્સ એપીઆઈ ઓઆરએમ (ઓબ્જેક્ટ-રીલેશ્નલ મેપિંગ) માટેના સાધનોને એકીકૃત કરે છે. કેનિગો 3 માં મૂળભૂત જે. પી. એ. અમલીકરણ હાઇબરનેટ છે. સ્પ્રિંગ ડેટા જે. પી. એ. જે. પી. એ. આધારિત ભંડારોનો સરળતાથી અમલ કરવાનું સરળ બનાવે છે. તે સ્પ્રિંગ સંચાલિત એપ્લિકેશનો બનાવવાનું સરળ બનાવે છે જે ડેટા એક્સેસ તકનીકોનો ઉપયોગ કરે છે. મોંગોડીબીઃ સ્પ્રિંગ ડેટા મોંગોડીબીને કારણે મોંગોડીબી દસ્તાવેજ ડેટાબેઝ સાથે સરળતાથી સંકલન થાય છે. આધાર મોડ્યુલ આ મોડ્યુલ માળખામાં કેટલીક વધારાની સુવિધાઓ પ્રદાન કરે છે. ફાઇલ ટ્રાન્સફરઃ સર્વરને એચ. ટી. એમ. એલ. સ્વરૂપમાં બંધ કરેલી ફાઇલો પ્રાપ્ત કરવા માટે સક્ષમ કરે છે. મેઇલ સૂચનાઃ સર્વરને બહુવિધ સરનામાંઓ પર ઇમેઇલ્સ મોકલવા માટે સક્ષમ કરે છે. તે સાદા લખાણ અને એચ. ટી. એમ. એલ. સંદેશ સામગ્રી સ્વરૂપને સંભાળે છે. તે બહુવિધ ફાઇલોને પણ જોડી શકે છે. ટાસ્ક પ્લાનરઃ સ્પ્રિંગ અને ક્વાર્ટઝ પર આધારિત. પૂર્વનિર્ધારિત સમયપત્રકના નિયમોના આધારે વિલંબિત કાર્યોને અમલમાં મૂકવાનો વિકલ્પ સક્ષમ કરો. ઓ. એલ. ઇ.: તે એમ. એસ. એક્સેલ અને વર્ડ ઓ. એલ. ઇ. દસ્તાવેજ બંધારણોને હેરફેર કરી શકે છે. તે દસ્તાવેજો બનાવવા, વાંચવા અને તેમાં ફેરફાર કરવાની સંભાવનાને સક્ષમ કરે છે. તે પી. ઓ. આઈ. પુસ્તકાલય પર આધારિત છે. વિલિનીકરણઃ વર્ડએમએલ સ્વરૂપમાં દસ્તાવેજનું મિશ્રણ. ટેગ કરેલા દસ્તાવેજથી શરૂ કરીને, તે ચલોનું વિનિમય શબ્દકોશમાં વ્યાખ્યાયિત મૂલ્યોના જૂથ દ્વારા થાય છે. એસ. એફ. ટી. પી.: સર્વર જ્યાં એપ્લિકેશન તૈનાત છે અને અન્ય સર્વર વચ્ચે સુરક્ષિત પ્રોટોકોલ દ્વારા ફાઇલ ટ્રાન્સમિશનને સક્ષમ કરે છે. તે JSCH અને કોમન્સ-VFS પુસ્તકાલયો પર આધારિત છે. ઓપરેશન્સ મોડ્યુલ આ મોડ્યુલ એક્ઝેક્યુશન અને ઇન્સ્ટ્રુમેન્ટેશન ડેટા જનરેટ કરવા માટે એપ્લિકેશન્સમાં એક સુવિધા ઉમેરે છે. આ ડેટા મોનિટરિંગ ટૂલ્સ દ્વારા ખાણકામ અને પ્રક્રિયા કરવા માટે તૈયાર છે. ઇન્સ્ટ્રુમેન્ટેશનઃ ઇન્સ્ટ્રુમેન્ટેશન ડેટા જનરેટ કરવાની ક્ષમતા સાથે એપ્લિકેશનને સક્ષમ કરે છે (પ્રશ્નોની ગણતરી, ભૂલોની ગણતરી,.), આ ડેટા એપ્લિકેશનના અમલમાંથી આવે છે. મોનિટરિંગઃ ઇન્સ્ટ્રુમેન્ટેશન મોડ્યુલ જનરેટ કરેલા ડેટાની ઍક્સેસ મેળવવા માટે સ્ક્રીન બતાવવા માટે એપ્લિકેશનને સક્ષમ કરે છે. લોગિંગઃ લોગ એપેંડર્સને સંચાલિત કરવા માટે એપ્લિકેશનને સક્ષમ કરે છે (સક્રિય કરો, નિષ્ક્રિય કરો, લોગ સ્તર બદલો) અને વેબસોકેટ્સ સાથે વાસ્તવિક સમય પર લોગ્સ જુઓ. બાહ્ય કડીઓ પોર્ટલ ડી કેનિગો કેટાલોનીયાની સરકાર જાવા સ્પષ્ટીકરણ જાવા એન્ટરપ્રાઇઝ પ્લેટફોર્મની વિનંતી કરે છે