 			pendingSubscriptionRequestJID = null;
 		}
 		
+		/**
+		 * 
+		 * @param	resultIQ
+		 */
 		public function unsubscribe_result( resultIQ:IQ ):void
 		{
 			// Does nothing for now
 		}
-		
-		public override function set filterFunction(f:Function):void
-		{
-			throw new Error("Setting the filterFunction on Roster is not allowed; Wrap it in a ListCollectionView and filter that.");
-		}
-		
+			
+		/**
+		 * 
+		 * @param	eventObj PresenceEvent, LoginEvent or RosterExtension
+		 */
 		private function handleEvent( eventObj:* ):void
 		{
 
 			switch( eventObj.type )
 			{
 				// Handle any incoming presence items
-				case "presence":
+				case PresenceEvent.PRESENCE:
 					handlePresences( eventObj.data );
 					break;
 				
 				// Fetch the roster immediately after login
-				case "login":
+				case LoginEvent.LOGIN:
 					fetchRoster();
 					// Tell the server we are online and available
 					//setPresence( Presence.SHOW_NORMAL, "Online", 5 );

	 *
	 * The event object contains an attribute <code>jid</code> with the JID of the user who
	 * denied the request.
	 */
	[Event("subscriptionDenial")]
	
	/**
	 * Broadcast whenever a contact in the roster becomes unavailable. (Goes from online to offline.)
	 * The event object contains an attribute <code>jid</code> with the JID of the user who
	 * became unavailable.
	 */
	[Event("userUnavailable")]
	
	/**
	 * Broadcast whenever a contact in the roster becomes available. (Goes from offline to online.)
	 * The event object contains an attribute <code>jid</code> with the JID of the user who
	 * became available.
	 */
	[Event("userAvailable")]
	
	/**
	 * Manages a user's server-side instant messaging roster (or "buddy list"). By default,

			myConnection.send( tempPresence );
		}
		
		/**
		 * 
		 * @param	resultIQ
		 */
		public function fetchRoster_result( resultIQ:IQ ):void
		{
			// Clear out the old roster
