Symfony 4.1

RegisterMappingsPass




symfony

RegisterMappingsPass

अमूर्त वर्ग RegisterMappingsPass उपकरण CompilerPassInterface लागू करता है

सिद्धांत कक्षा के लिए बेस क्लास एक संकलक पास क्लास प्रदान करता है जो सिद्धांत मैपिंग को पंजीकृत करने में मदद करता है।

संकलक पास का मतलब मेटाडेटा चेन ड्राइवर के साथ मैपिंग को पंजीकृत करना है जो ऑब्जेक्ट प्रबंधकों में से एक के अनुरूप है।

कंक्रीट कार्यान्वयन के लिए जो उपयोग में आसान हैं, DoctrineBundle के संबंध में RegisterXyMappingsPass कक्षाएं देखें। DoctrineMongodbBundle, DoctrineCouchdbBundle और DoctrinePhpcrBundle।

गुण

संरक्षित Definition | Reference $ ड्राइवर ड्राइवर के उपयोग के लिए DI ऑब्जेक्ट, या तो एक निजी सेवा के लिए एक सेवा परिभाषा या एक सार्वजनिक सेवा के लिए एक संदर्भ।
संरक्षित स्ट्रिंग [] $ नामस्थान ड्राइवर द्वारा नियंत्रित नामस्थानों की सूची।
संरक्षित स्ट्रिंग [] $ managerParameters संभावित कंटेनर मापदंडों की सूची, जो सही मेटाडेटा ड्राइवर के साथ मैपिंग रजिस्टर करने के लिए ऑब्जेक्ट मैनेजर का नाम रखते हैं, उदाहरण के लिए सरणी ('acme.manager', 'doctrine.default_entity_manager')।
संरक्षित स्ट्रिंग $ driverPattern मेटाडेटा श्रृंखला ड्राइवर सेवा आईडी का नामकरण पैटर्न, उदाहरण के लिए 'doctrine.orm।% S_metadata_driver'।
संरक्षित स्ट्रिंग | $ enabledParameter कंटेनर में एक पैरामीटर के लिए एक नाम। यदि सेट किया जाता है, तो यह कंपाइलर पास केवल कुछ भी करेगा यदि पैरामीटर मौजूद है। (लेकिन उस पैरामीटर के मूल्य की परवाह किए बिना।

तरीके

__construct ( Definition | Reference $ ड्राइवर, सरणी $ नेमस्पेस, सरणी $ मैनेजरप्रेमेटर्स, स्ट्रिंग $ ड्राइवरपार्टनर, स्ट्रिंग। गलत $ enableParameter = false, string $ configurationPattern = ', string $ registerliasMethodName =' ', array $ aliasMap = array ())

$ ManagerParameters कंटेनर मापदंडों की एक सूचीबद्ध सूची है जो इन नामस्थानों और उपनामों को पंजीकृत करने के लिए प्रबंधक का नाम प्रदान कर सकती है। पहले गैर-खाली नाम का उपयोग किया जाता है, दूसरों को छोड़ दिया जाता है।

process ( ContainerBuilder $ कंटेनर)

मेटाडाटा ड्राइवरों के साथ मैपिंग और उर्फ ​​रजिस्टर करें।

तार getChainDriverServiceName ( ContainerBuilder $ कंटेनर)

मेटाडेटा श्रृंखला ड्राइवर का सेवा नाम प्राप्त करें जिसे मैपिंग के साथ पंजीकृत होना चाहिए।

Definition | Reference getDriver ( ContainerBuilder $ कंटेनर)

मेटाडेटा ड्राइवर के लिए सेवा परिभाषा बनाएँ।

bool enabled ( ContainerBuilder कंटेनर)

निर्धारित करें कि यह मानचित्रण सक्रिय होना चाहिए या नहीं। यह कंटेनर बिल्डर के पास इस निर्णय को लेने की अनुमति देता है।

विवरण

__construct ( Definition | Reference $ ड्राइवर, सरणी $ नेमस्पेस, सरणी $ मैनेजरप्रेमेटर्स, स्ट्रिंग $ ड्राइवरपार्टनर, स्ट्रिंग। गलत $ enableParameter = false, string $ configurationPattern = ', string $ registerliasMethodName =' ', array $ aliasMap = array ())

$ ManagerParameters कंटेनर मापदंडों की एक सूचीबद्ध सूची है जो इन नामस्थानों और उपनामों को पंजीकृत करने के लिए प्रबंधक का नाम प्रदान कर सकती है। पहले गैर-खाली नाम का उपयोग किया जाता है, दूसरों को छोड़ दिया जाता है।

$ AliasMap पैरामीटर का उपयोग बंडल नेमस्पेस शॉर्टकट को परिभाषित करने के लिए किया जा सकता है, जैसे कि DoctrineBundle डिफ़ॉल्ट एंटिटी / दस्तावेज़ फ़ोल्डर में ऑब्जेक्ट के लिए स्वचालित रूप से प्रदान करता है।

पैरामीटर

Definition | Reference $ ड्राइवर चालक DI परिभाषा या संदर्भ
सरणी $ नामस्थान $ ड्राइवर द्वारा नियंत्रित नामस्थानों की सूची
सरणी $ managerParameters कंटेनर मापदंडों की सूची जो प्रबंधक का नाम रख सकती है
तार $ driverPattern मेटाडेटा ड्राइवर सेवा के नाम के लिए पैटर्न
स्ट्रिंग | झूठी $ enabledParameter सर्विस कंटेनर पैरामीटर जो मैपिंग को सक्षम करने के लिए मौजूद होना चाहिए। वैकल्पिक, किसी भी चेक को न करने के लिए गलत पर सेट करें।
तार $ configurationPattern कॉन्फ़िगरेशन सेवा नाम के लिए पैटर्न
तार $ registerAliasMethodName उपनाम रजिस्टर करने के लिए कॉन्फ़िगरेशन क्लास विधि का नाम
सरणी $ aliasMap उपनाम से नाम स्थान का नक्शा

प्रक्रिया ( ContainerBuilder $ कंटेनर)

मेटाडाटा ड्राइवरों के साथ मैपिंग और उर्फ ​​रजिस्टर करें।

पैरामीटर

ContainerBuilder $ कंटेनर

संरक्षित स्ट्रिंग getChainDriverServiceName ( ContainerBuilder $ कंटेनर)

मेटाडेटा श्रृंखला ड्राइवर का सेवा नाम प्राप्त करें जिसे मैपिंग के साथ पंजीकृत होना चाहिए।

पैरामीटर

ContainerBuilder $ कंटेनर

प्रतिलाभ की मात्रा

तार चेन चालक सेवा का नाम

अपवाद

InvalidArgumentException यदि प्रबंधक के गैर-पैरामीटर का एक गैर-खाली मान है

संरक्षित Definition | Reference getDriver ( ContainerBuilder $ कंटेनर)

मेटाडेटा ड्राइवर के लिए सेवा परिभाषा बनाएँ।

पैरामीटर

ContainerBuilder $ कंटेनर मामले में उत्तीर्ण वर्ग को कंटेनर तक पहुंच की आवश्यकता होती है

प्रतिलाभ की मात्रा

Definition | Reference मेटाडेटा ड्राइवर सभी चेन ड्राइवरों को जोड़ने के लिए

संरक्षित बूल सक्षम ( ContainerBuilder $ कंटेनर)

निर्धारित करें कि यह मानचित्रण सक्रिय होना चाहिए या नहीं। यह कंटेनर बिल्डर के पास इस निर्णय को लेने की अनुमति देता है।

यह डिफ़ॉल्ट कार्यान्वयन जाँचता है कि क्या वर्ग में सक्षमपैरमीटर कॉन्फ़िगर किया गया है और यदि ऐसा है तो वह पैरामीटर कंटेनर में मौजूद है।

पैरामीटर

ContainerBuilder $ कंटेनर

प्रतिलाभ की मात्रा

bool क्या यह संकलक पास वास्तव में मैपिंग को पंजीकृत करना चाहिए