53 localAddress.GetReadable(dispBuf); |
53 localAddress.GetReadable(dispBuf); |
54 test.Printf(_L("Local address = 0x%S\n"),&dispBuf); |
54 test.Printf(_L("Local address = 0x%S\n"),&dispBuf); |
55 } |
55 } |
56 } |
56 } |
57 |
57 |
|
58 void CreateSubscribersL(RPointerArray<CSubscriber>& aSubscribers) |
|
59 { |
|
60 CSubscriber* subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetPHYCount, KNumLinks); |
|
61 |
|
62 CleanupStack::PushL(subscriber); |
|
63 aSubscribers.AppendL(subscriber); |
|
64 CleanupStack::Pop(subscriber); |
|
65 |
|
66 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetRegistryTableChange, KRegistry); |
|
67 CleanupStack::PushL(subscriber); |
|
68 aSubscribers.AppendL(subscriber); |
|
69 CleanupStack::Pop(subscriber); |
|
70 |
|
71 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetConnectingStatus, KConnecting); |
|
72 CleanupStack::PushL(subscriber); |
|
73 aSubscribers.AppendL(subscriber); |
|
74 CleanupStack::Pop(subscriber); |
|
75 |
|
76 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetScanningStatus, KScanning); |
|
77 CleanupStack::PushL(subscriber); |
|
78 aSubscribers.AppendL(subscriber); |
|
79 CleanupStack::Pop(subscriber); |
|
80 |
|
81 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetLimitedDiscoverableStatus, KLimited); |
|
82 CleanupStack::PushL(subscriber); |
|
83 aSubscribers.AppendL(subscriber); |
|
84 CleanupStack::Pop(subscriber); |
|
85 |
|
86 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetDeviceClass, KDeviceClass); |
|
87 CleanupStack::PushL(subscriber); |
|
88 aSubscribers.AppendL(subscriber); |
|
89 CleanupStack::Pop(subscriber); |
|
90 |
|
91 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothGetCorruptRegistryResetIndication, KCorruptRegistry); |
|
92 CleanupStack::PushL(subscriber); |
|
93 aSubscribers.AppendL(subscriber); |
|
94 CleanupStack::Pop(subscriber); |
|
95 |
|
96 subscriber = CDeviceNameSubscriber::NewL(test, KPropertyKeyBluetoothGetDeviceName, KDeviceName); |
|
97 CleanupStack::PushL(subscriber); |
|
98 aSubscribers.AppendL(subscriber); |
|
99 CleanupStack::Pop(subscriber); |
|
100 |
|
101 subscriber = CSubscriber::NewL(test, KPropertyKeyBluetoothHostResolverActive, KDiscovering); |
|
102 CleanupStack::PushL(subscriber); |
|
103 aSubscribers.AppendL(subscriber); |
|
104 CleanupStack::Pop(subscriber); |
|
105 } |
|
106 |
|
107 |
58 void TestL() |
108 void TestL() |
59 { |
109 { |
60 // first do a sync test |
110 // first do a sync test |
61 ShowAddress(); |
111 ShowAddress(); |
62 |
112 |
63 RPointerArray<CSubscriber> subscribers; |
113 RPointerArray<CSubscriber> subscribers; |
64 |
114 |
65 //ignoring errors! |
115 TRAPD(err, CreateSubscribersL(subscribers)); |
66 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetPHYCount, KNumLinks)); |
|
67 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetRegistryTableChange, KRegistry)); |
|
68 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetConnectingStatus, KConnecting)); |
|
69 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetScanningStatus, KScanning)); |
|
70 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetLimitedDiscoverableStatus, KLimited)); |
|
71 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetDeviceClass, KDeviceClass)); |
|
72 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothGetCorruptRegistryResetIndication, KCorruptRegistry)); |
|
73 subscribers.Append(CDeviceNameSubscriber::NewL(test, KPropertyKeyBluetoothGetDeviceName, KDeviceName)); |
|
74 subscribers.Append(CSubscriber::NewL(test, KPropertyKeyBluetoothHostResolverActive, KDiscovering)); |
|
75 |
116 |
76 test.Printf(_L("%d Subscribers\n"), subscribers.Count()); |
117 test.Printf(_L("%d Subscribers\n"), subscribers.Count()); |
77 |
118 |
78 for (TInt i=0; i<subscribers.Count(); i++) |
119 if (err == KErrNone) |
79 subscribers[i]->Start(); |
120 { |
80 |
121 // Only start if no errors when creating the subscribers |
81 CActiveScheduler::Start(); |
122 for (TInt i=0; i<subscribers.Count(); i++) |
|
123 { |
|
124 subscribers[i]->Start(); |
|
125 } |
|
126 CActiveScheduler::Start(); |
|
127 } |
82 subscribers.ResetAndDestroy(); |
128 subscribers.ResetAndDestroy(); |
83 } |
129 } |
84 |
|
85 |
130 |
86 CSubscriber* CSubscriber::NewL(RTest& aTest, TUint aKey, const TDesC& aString) |
131 CSubscriber* CSubscriber::NewL(RTest& aTest, TUint aKey, const TDesC& aString) |
87 { |
132 { |
88 CSubscriber* s = new(ELeave) CSubscriber(aTest, aString); |
133 CSubscriber* s = new(ELeave) CSubscriber(aTest, aString); |
89 CleanupStack::PushL(s); |
134 CleanupStack::PushL(s); |