Hi,
Patch : Filter the hosts out of the user list for sharing.
(share list contains only users)
Please review.
Thanks
Johnny
Index: src/LinuxClient/library/iFolderUserSelector.cs
===================================================================
--- src/LinuxClient/library/iFolderUserSelector.cs (revision 6548)
+++ src/LinuxClient/library/iFolderUserSelector.cs (working copy)
@@ -636,11 +636,13 @@
memberFullNames.Clear();
duplicateMembers.Clear();
+ int nonMemberElements = 0;
+
searchContext = SearchContext;
if (MemberList != null)
{
- for (int i = 0; i < MemberList.Length; i++)
+ for (int i = 0, j=0; i < MemberList.Length; i++)
{
MemberInfo memberInfo = MemberList[i];
@@ -658,7 +660,14 @@
else
memberFullNames[memberInfo.FullName] = memberInfo.Name;
- memberInfos[i] = memberInfo;
+ if ( memberInfo.IsHost )
+ {
+ nonMemberElements++;
+ }
+ else
+ {
+ memberInfos[j++] = memberInfo;
+ }
}
if (MemberList.Length >= Total)
@@ -668,7 +677,8 @@
}
}
- total = Total;
+ total = Total - nonMemberElements;
+ Console.WriteLine ("Johnny : iFolderUserSelector :
{0}", total);
}
public void CloseSearch()
Index: src/core/WebService/Simias.asmx.cs
===================================================================
--- src/core/WebService/Simias.asmx.cs (revision 6811)
+++ src/core/WebService/Simias.asmx.cs (working copy)
@@ -162,7 +162,17 @@
/// <summary>
+ /// Whether this Member object is a user object.
/// </summary>
+ public bool IsHost;
+
+ /// <summary>
+ /// Property tag for User object.
+ /// </summary>
+ static private readonly string HostTag = "Host";
+
+ /// <summary>
+ /// </summary>
public MemberInfo()
{
}
@@ -178,6 +188,7 @@
this.FullName = member.FN;
this.AccessRights = (int) member.Rights;
this.IsOwner = member.IsOwner;
+ this.IsHost = member.IsType (HostTag);
}
}
Index: src/core/WebService/Simias.wsdl
===================================================================
--- src/core/WebService/Simias.wsdl (revision 6811)
+++ src/core/WebService/Simias.wsdl (working copy)
@@ -68,6 +68,7 @@
<xs:element minOccurs="0" maxOccurs="1" name="FullName"
type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="AccessRights"
type="xs:int" />
<xs:element minOccurs="1" maxOccurs="1" name="IsOwner"
type="xs:boolean" />
+ <xs:element minOccurs="1" maxOccurs="1" name="IsHost"
type="xs:boolean" />
</xs:sequence>
</xs:complexType>
<xs:element name="FindFirstMembersResponse">
_______________________________________________
ifolder-dev mailing list
[email protected]
http://forge.novell.com/mailman/listinfo/ifolder-dev