2011-09-27 13 views
7

क्या यह कहने का कोई तरीका है कि कठपुतली में एक चर (या अधिक विशेष रूप से, एक तथ्य) एक विशेष मूल्य है, और अगर यह नहीं करता है तो स्थापना को निरस्त करने के लिए?क्या कठपुतली में "जोर देना" संभव है?

पृष्ठभूमि के लिए, यहाँ स्थिति है:

ज्यादातर मामलों मैं होस्ट नामों का उल्लेख कर सकते में, लेकिन कभी कभी मैं IP पते का उपयोग करने की आवश्यकता है। उदाहरण के लिए, हमारे लॉग कलेक्टर होस्ट को कई विशिष्ट मशीनों (और पूरे सबनेट नहीं) के लिए फ़ायरवॉल में एक पोर्ट खोलने की आवश्यकता है। फ़ायरवॉल में एक छेद खोलने के लिए मुझे आईपी पते का उपयोग करने की आवश्यकता है। चूंकि मशीनों के आईपी पते नहीं बदलते हैं, इसलिए मैं कॉन्फ़िगरेशन के हिस्से के रूप में आईपी पते को एन्कोड करने की योजना बना रहा था, लेकिन मैं व्यक्तिगत मेजबानों को जांचना चाहता हूं कि वास्तविक आईपी पता इसकी कॉन्फ़िगरेशन में से मेल खाता है और विफल रहता है यह नहीं करता है क्या यह संभव है?

उत्तर

11

मेरा मानना ​​है कि कुछ इस तरह काम करेगा:

if $ipaddress != $expectedipaddress { 
    fail("IP mismatch") 
} 

fail() function एक पार्स विफलता का कारण बनता। एक सशर्त में इसे लपेटना assert व्यवहार चाहते हैं जो आपको चाहिए।

मैंने इस विशिष्ट उपयोग का परीक्षण नहीं किया है, लेकिन यदि पार्सिंग विफल रहता है तो एक नई सूची संकलित नहीं होती है और ग्राहक को कुछ भी नहीं मिलता है।

संबंधित मुद्दे