MultiLineReceiver

public abstract class MultiLineReceiver
extends Object implements IShellOutputReceiver

java.lang.Object
   ↳ com.android.ddmlib.MultiLineReceiver


IShellOutputReceiver का बुनियादी तौर पर लागू किया गया वर्शन. यह सॉकेट से मिले रॉ डेटा को लेता है और उसे String ऑब्जेक्ट में बदलता है.

इसके अलावा, यह स्ट्रिंग को लाइनों के हिसाब से भी बांटता है.

इस सुविधा का इस्तेमाल करने वाली क्लास को processNewLines(String[]) लागू करना होगा. इससे पार्स की गई नई लाइनें उपलब्ध होते ही मिल जाती हैं.

खास जानकारी

पब्लिक कंस्ट्रक्टर

MultiLineReceiver()

सार्वजनिक तरीके

final void addOutput(byte[] data, int offset, int length)

जब भी कोई नया डेटा उपलब्ध होता है, तब इस फ़ंक्शन को कॉल किया जाता है.

void done()

इस विकल्प को चुनने पर प्रोसेस बंद हो जाती है.

void flush()

इस फ़ंक्शन को प्रोसेस के खत्म होने पर कॉल किया जाता है. हालांकि, अगर प्रोसेस रद्द कर दी गई है, तो इसे कॉल नहीं किया जाता.

abstract void processNewLines(String[] lines)

जब रिमोट प्रोसेस को नई लाइनें मिलती हैं, तब इसे कॉल किया जाता है.

void setTrimLine(boolean trim)

ट्रिम लाइनों का फ़्लैग सेट करें.

पब्लिक कंस्ट्रक्टर

MultiLineReceiver

public MultiLineReceiver ()

सार्वजनिक तरीके

addOutput

public final void addOutput (byte[] data, 
                int offset, 
                int length)

जब भी कोई नया डेटा उपलब्ध होता है, तब इस फ़ंक्शन को कॉल किया जाता है.

पैरामीटर
data byte: नया डेटा.

offset int: वह ऑफ़सेट जहां से नया डेटा शुरू होता है.

length int: नए डेटा की लंबाई.

done

public void done ()

इस विकल्प को चुनने पर प्रोसेस बंद हो जाती है. इसे आखिरी लाइनों के processNewLines(String[]) के बाद कॉल किया जाता है.

फ़्लश

public void flush ()

इस फ़ंक्शन को प्रोसेस के खत्म होने पर कॉल किया जाता है. हालांकि, अगर प्रोसेस रद्द कर दी गई है, तो इसे कॉल नहीं किया जाता. इससे, डेटा पाने वाले व्यक्ति को उस डेटा को बंद करने और हटाने की अनुमति मिलती है जिसे अब तक प्रोसेस नहीं किया गया है.

processNewLines

public abstract void processNewLines (String[] lines)

जब रिमोट प्रोसेस को नई लाइनें मिलती हैं, तब इसे कॉल किया जाता है.

यह पक्का किया जाता है कि इस तरीके को लाइनें देते समय वे पूरी हों.

पैरामीटर
lines String: नई लाइनें शामिल करने वाला कलेक्शन.

setTrimLine

public void setTrimLine (boolean trim)

ट्रिम लाइनों का फ़्लैग सेट करें.

पैरामीटर
trim boolean: लाइनों को काटा गया है या नहीं.