Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
01/08/11 14:39:29 (13 years ago)
Author:
mjesner
Message:

#1196

Location:
branches/UserManagement
Files:
8 added
1 deleted
27 edited

Legend:

Unmodified
Added
Removed
  • branches/UserManagement/HeuristicLab.Authentication.sln

    r4925 r5257  
    1919Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Services.Authentication", "HeuristicLab.Services.Authentication\HeuristicLab.Services.Authentication.csproj", "{0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}"
    2020EndProject
     21Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Collections-3.3", "HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj", "{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}"
     22EndProject
    2123Global
    2224  GlobalSection(TestCaseManagementSettings) = postSolution
     
    2628    Debug|Any CPU = Debug|Any CPU
    2729    Debug|Mixed Platforms = Debug|Mixed Platforms
     30    Debug|x64 = Debug|x64
    2831    Debug|x86 = Debug|x86
    2932    Release|Any CPU = Release|Any CPU
    3033    Release|Mixed Platforms = Release|Mixed Platforms
     34    Release|x64 = Release|x64
    3135    Release|x86 = Release|x86
    3236  EndGlobalSection
     
    3640    {8700A834-561F-44F0-86B4-F220245A6BC8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
    3741    {8700A834-561F-44F0-86B4-F220245A6BC8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
     42    {8700A834-561F-44F0-86B4-F220245A6BC8}.Debug|x64.ActiveCfg = Debug|Any CPU
    3843    {8700A834-561F-44F0-86B4-F220245A6BC8}.Debug|x86.ActiveCfg = Debug|Any CPU
    3944    {8700A834-561F-44F0-86B4-F220245A6BC8}.Release|Any CPU.ActiveCfg = Release|Any CPU
     
    4146    {8700A834-561F-44F0-86B4-F220245A6BC8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
    4247    {8700A834-561F-44F0-86B4-F220245A6BC8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
     48    {8700A834-561F-44F0-86B4-F220245A6BC8}.Release|x64.ActiveCfg = Release|Any CPU
    4349    {8700A834-561F-44F0-86B4-F220245A6BC8}.Release|x86.ActiveCfg = Release|Any CPU
    4450    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     
    4652    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
    4753    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
     54    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Debug|x64.ActiveCfg = Debug|Any CPU
    4855    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Debug|x86.ActiveCfg = Debug|Any CPU
    4956    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Release|Any CPU.ActiveCfg = Release|Any CPU
     
    5158    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
    5259    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Release|Mixed Platforms.Build.0 = Release|Any CPU
     60    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Release|x64.ActiveCfg = Release|Any CPU
    5361    {AC44BDF4-AED7-4445-9A99-57B3237DBE88}.Release|x86.ActiveCfg = Release|Any CPU
    5462    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Debug|Any CPU.ActiveCfg = Debug|x86
    5563    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
    5664    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Debug|Mixed Platforms.Build.0 = Debug|x86
     65    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Debug|x64.ActiveCfg = Debug|x86
    5766    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Debug|x86.ActiveCfg = Debug|x86
    5867    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Debug|x86.Build.0 = Debug|x86
     
    6069    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Release|Mixed Platforms.ActiveCfg = Release|x86
    6170    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Release|Mixed Platforms.Build.0 = Release|x86
     71    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Release|x64.ActiveCfg = Release|x86
    6272    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Release|x86.ActiveCfg = Release|x86
    6373    {EB40C828-D545-4DFE-9CE6-108FB03C6912}.Release|x86.Build.0 = Release|x86
     
    6676    {8E698904-936D-4C7A-AB0D-6225778D2968}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
    6777    {8E698904-936D-4C7A-AB0D-6225778D2968}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
     78    {8E698904-936D-4C7A-AB0D-6225778D2968}.Debug|x64.ActiveCfg = Debug|Any CPU
    6879    {8E698904-936D-4C7A-AB0D-6225778D2968}.Debug|x86.ActiveCfg = Debug|Any CPU
    6980    {8E698904-936D-4C7A-AB0D-6225778D2968}.Release|Any CPU.ActiveCfg = Release|Any CPU
     
    7182    {8E698904-936D-4C7A-AB0D-6225778D2968}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
    7283    {8E698904-936D-4C7A-AB0D-6225778D2968}.Release|Mixed Platforms.Build.0 = Release|Any CPU
     84    {8E698904-936D-4C7A-AB0D-6225778D2968}.Release|x64.ActiveCfg = Release|Any CPU
    7385    {8E698904-936D-4C7A-AB0D-6225778D2968}.Release|x86.ActiveCfg = Release|Any CPU
    7486    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     
    7688    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
    7789    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
     90    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Debug|x64.ActiveCfg = Debug|Any CPU
    7891    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Debug|x86.ActiveCfg = Debug|Any CPU
    7992    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Release|Any CPU.ActiveCfg = Release|Any CPU
     
    8194    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
    8295    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Release|Mixed Platforms.Build.0 = Release|Any CPU
     96    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Release|x64.ActiveCfg = Release|Any CPU
    8397    {0E7ADDD6-C7EA-45F6-A7ED-48041ABF1A87}.Release|x86.ActiveCfg = Release|Any CPU
     98    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     99    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|Any CPU.Build.0 = Debug|Any CPU
     100    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
     101    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|Mixed Platforms.Build.0 = Debug|x86
     102    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|x64.ActiveCfg = Debug|x64
     103    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|x64.Build.0 = Debug|x64
     104    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|x86.ActiveCfg = Debug|x86
     105    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Debug|x86.Build.0 = Debug|x86
     106    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|Any CPU.ActiveCfg = Release|Any CPU
     107    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|Any CPU.Build.0 = Release|Any CPU
     108    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|Mixed Platforms.ActiveCfg = Release|x86
     109    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|Mixed Platforms.Build.0 = Release|x86
     110    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|x64.ActiveCfg = Release|x64
     111    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|x64.Build.0 = Release|x64
     112    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|x86.ActiveCfg = Release|x86
     113    {958B43BC-CC5C-4FA2-8628-2B3B01D890B6}.Release|x86.Build.0 = Release|x86
    84114  EndGlobalSection
    85115  GlobalSection(SolutionProperties) = preSolution
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataAccess/UserManagement.dbml

    r4647 r5257  
    88      <Column Name="Description" Type="System.String" DbType="NVarChar(256)" CanBeNull="true" />
    99      <Association Name="aspnet_Application_aspnet_Membership" Member="aspnet_Memberships" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_Membership" />
    10       <Association Name="aspnet_Application_aspnet_Path" Member="aspnet_Paths" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_Path" />
    1110      <Association Name="aspnet_Application_aspnet_Role" Member="aspnet_Roles" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_Role" />
    1211      <Association Name="aspnet_Application_aspnet_User" Member="aspnet_Users" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_User" />
     
    4039    </Type>
    4140  </Table>
    42   <Table Name="dbo.aspnet_Paths" Member="aspnet_Paths">
    43     <Type Name="aspnet_Path">
    44       <Column Name="ApplicationId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
    45       <Column Name="PathId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    46       <Column Name="Path" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    47       <Column Name="LoweredPath" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    48       <Association Name="aspnet_Path_aspnet_PersonalizationAllUser" Member="aspnet_PersonalizationAllUser" ThisKey="PathId" OtherKey="PathId" Type="aspnet_PersonalizationAllUser" Cardinality="One" />
    49       <Association Name="aspnet_Path_aspnet_PersonalizationPerUser" Member="aspnet_PersonalizationPerUsers" ThisKey="PathId" OtherKey="PathId" Type="aspnet_PersonalizationPerUser" />
    50       <Association Name="aspnet_Application_aspnet_Path" Member="aspnet_Application" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_Application" IsForeignKey="true" />
    51     </Type>
    52   </Table>
    53   <Table Name="dbo.aspnet_PersonalizationAllUsers" Member="aspnet_PersonalizationAllUsers">
    54     <Type Name="aspnet_PersonalizationAllUser">
    55       <Column Name="PathId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    56       <Column Name="PageSettings" Type="System.Data.Linq.Binary" DbType="Image NOT NULL" CanBeNull="false" UpdateCheck="Never" />
    57       <Column Name="LastUpdatedDate" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
    58       <Association Name="aspnet_Path_aspnet_PersonalizationAllUser" Member="aspnet_Path" ThisKey="PathId" OtherKey="PathId" Type="aspnet_Path" IsForeignKey="true" />
    59     </Type>
    60   </Table>
    61   <Table Name="dbo.aspnet_PersonalizationPerUser" Member="aspnet_PersonalizationPerUsers">
    62     <Type Name="aspnet_PersonalizationPerUser">
    63       <Column Name="Id" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    64       <Column Name="PathId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
    65       <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
    66       <Column Name="PageSettings" Type="System.Data.Linq.Binary" DbType="Image NOT NULL" CanBeNull="false" UpdateCheck="Never" />
    67       <Column Name="LastUpdatedDate" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
    68       <Association Name="aspnet_Path_aspnet_PersonalizationPerUser" Member="aspnet_Path" ThisKey="PathId" OtherKey="PathId" Type="aspnet_Path" IsForeignKey="true" />
    69       <Association Name="aspnet_User_aspnet_PersonalizationPerUser" Member="aspnet_User" ThisKey="UserId" OtherKey="UserId" Type="aspnet_User" IsForeignKey="true" />
    70     </Type>
    71   </Table>
    72   <Table Name="dbo.aspnet_Profile" Member="aspnet_Profiles">
    73     <Type Name="aspnet_Profile">
    74       <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    75       <Column Name="PropertyNames" Type="System.String" DbType="NText NOT NULL" CanBeNull="false" UpdateCheck="Never" />
    76       <Column Name="PropertyValuesString" Type="System.String" DbType="NText NOT NULL" CanBeNull="false" UpdateCheck="Never" />
    77       <Column Name="PropertyValuesBinary" Type="System.Data.Linq.Binary" DbType="Image NOT NULL" CanBeNull="false" UpdateCheck="Never" />
    78       <Column Name="LastUpdatedDate" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
    79       <Association Name="aspnet_User_aspnet_Profile" Member="aspnet_User" ThisKey="UserId" OtherKey="UserId" Type="aspnet_User" IsForeignKey="true" />
    80     </Type>
    81   </Table>
    8241  <Table Name="dbo.aspnet_Roles" Member="aspnet_Roles">
    8342    <Type Name="aspnet_Role">
     
    8948      <Association Name="aspnet_Role_aspnet_UsersInRole" Member="aspnet_UsersInRoles" ThisKey="RoleId" OtherKey="RoleId" Type="aspnet_UsersInRole" />
    9049      <Association Name="aspnet_Application_aspnet_Role" Member="aspnet_Application" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_Application" IsForeignKey="true" />
    91     </Type>
    92   </Table>
    93   <Table Name="dbo.aspnet_SchemaVersions" Member="aspnet_SchemaVersions">
    94     <Type Name="aspnet_SchemaVersion">
    95       <Column Name="Feature" Type="System.String" DbType="NVarChar(128) NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    96       <Column Name="CompatibleSchemaVersion" Type="System.String" DbType="NVarChar(128) NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    97       <Column Name="IsCurrentVersion" Type="System.Boolean" DbType="Bit NOT NULL" CanBeNull="false" />
    9850    </Type>
    9951  </Table>
     
    10860      <Column Name="LastActivityDate" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
    10961      <Association Name="aspnet_User_aspnet_Membership" Member="aspnet_Membership" ThisKey="UserId" OtherKey="UserId" Type="aspnet_Membership" Cardinality="One" />
    110       <Association Name="aspnet_User_aspnet_PersonalizationPerUser" Member="aspnet_PersonalizationPerUsers" ThisKey="UserId" OtherKey="UserId" Type="aspnet_PersonalizationPerUser" />
    111       <Association Name="aspnet_User_aspnet_Profile" Member="aspnet_Profile" ThisKey="UserId" OtherKey="UserId" Type="aspnet_Profile" Cardinality="One" />
    11262      <Association Name="aspnet_User_aspnet_UsersInRole" Member="aspnet_UsersInRoles" ThisKey="UserId" OtherKey="UserId" Type="aspnet_UsersInRole" />
    11363      <Association Name="aspnet_Application_aspnet_User" Member="aspnet_Application" ThisKey="ApplicationId" OtherKey="ApplicationId" Type="aspnet_Application" IsForeignKey="true" />
     
    12272    </Type>
    12373  </Table>
    124   <Table Name="dbo.aspnet_WebEvent_Events" Member="aspnet_WebEvent_Events">
    125     <Type Name="aspnet_WebEvent_Event">
    126       <Column Name="EventId" Type="System.String" DbType="Char(32) NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    127       <Column Name="EventTimeUtc" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
    128       <Column Name="EventTime" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
    129       <Column Name="EventType" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    130       <Column Name="EventSequence" Type="System.Decimal" DbType="Decimal(19,0) NOT NULL" CanBeNull="false" />
    131       <Column Name="EventOccurrence" Type="System.Decimal" DbType="Decimal(19,0) NOT NULL" CanBeNull="false" />
    132       <Column Name="EventCode" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    133       <Column Name="EventDetailCode" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    134       <Column Name="Message" Type="System.String" DbType="NVarChar(1024)" CanBeNull="true" />
    135       <Column Name="ApplicationPath" Type="System.String" DbType="NVarChar(256)" CanBeNull="true" />
    136       <Column Name="ApplicationVirtualPath" Type="System.String" DbType="NVarChar(256)" CanBeNull="true" />
    137       <Column Name="MachineName" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    138       <Column Name="RequestUrl" Type="System.String" DbType="NVarChar(1024)" CanBeNull="true" />
    139       <Column Name="ExceptionType" Type="System.String" DbType="NVarChar(256)" CanBeNull="true" />
    140       <Column Name="Details" Type="System.String" DbType="NText" CanBeNull="true" UpdateCheck="Never" />
    141     </Type>
    142   </Table>
    143   <Function Name="dbo.aspnet_Users_DeleteUser" Method="aspnet_Users_DeleteUser">
     74  <Function Name="dbo.aspnet_Membership_ResetPassword" Method="aspnet_Membership_ResetPassword">
    14475    <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    14576    <Parameter Name="UserName" Parameter="userName" Type="System.String" DbType="NVarChar(256)" />
    146     <Parameter Name="TablesToDeleteFrom" Parameter="tablesToDeleteFrom" Type="System.Int32" DbType="Int" />
    147     <Parameter Name="NumTablesDeletedFrom" Parameter="numTablesDeletedFrom" Type="System.Int32" DbType="Int" Direction="InOut" />
    148     <Return Type="System.Int32" />
    149   </Function>
    150   <Function Name="dbo.aspnet_Users_CreateUser" Method="aspnet_Users_CreateUser">
    151     <Parameter Name="ApplicationId" Parameter="applicationId" Type="System.Guid" DbType="UniqueIdentifier" />
    152     <Parameter Name="UserName" Parameter="userName" Type="System.String" DbType="NVarChar(256)" />
    153     <Parameter Name="IsUserAnonymous" Parameter="isUserAnonymous" Type="System.Boolean" DbType="Bit" />
    154     <Parameter Name="LastActivityDate" Parameter="lastActivityDate" Type="System.DateTime" DbType="DateTime" />
    155     <Parameter Name="UserId" Parameter="userId" Type="System.Guid" DbType="UniqueIdentifier" Direction="InOut" />
    156     <Return Type="System.Int32" />
    157   </Function>
    158   <Function Name="dbo.aspnet_UsersInRoles_AddUsersToRoles" Method="aspnet_UsersInRoles_AddUsersToRoles">
    159     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    160     <Parameter Name="UserNames" Parameter="userNames" Type="System.String" DbType="NVarChar(4000)" />
    161     <Parameter Name="RoleNames" Parameter="roleNames" Type="System.String" DbType="NVarChar(4000)" />
     77    <Parameter Name="NewPassword" Parameter="newPassword" Type="System.String" DbType="NVarChar(128)" />
     78    <Parameter Name="MaxInvalidPasswordAttempts" Parameter="maxInvalidPasswordAttempts" Type="System.Int32" DbType="Int" />
     79    <Parameter Name="PasswordAttemptWindow" Parameter="passwordAttemptWindow" Type="System.Int32" DbType="Int" />
     80    <Parameter Name="PasswordSalt" Parameter="passwordSalt" Type="System.String" DbType="NVarChar(128)" />
    16281    <Parameter Name="CurrentTimeUtc" Parameter="currentTimeUtc" Type="System.DateTime" DbType="DateTime" />
    163     <ElementType Name="aspnet_UsersInRoles_AddUsersToRolesResult">
    164       <Column Name="Name" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    165     </ElementType>
    166   </Function>
    167   <Function Name="dbo.aspnet_UsersInRoles_RemoveUsersFromRoles" Method="aspnet_UsersInRoles_RemoveUsersFromRoles">
    168     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    169     <Parameter Name="UserNames" Parameter="userNames" Type="System.String" DbType="NVarChar(4000)" />
    170     <Parameter Name="RoleNames" Parameter="roleNames" Type="System.String" DbType="NVarChar(4000)" />
    171     <ElementType Name="aspnet_UsersInRoles_RemoveUsersFromRolesResult">
    172       <Column Name="" Member="Column1" Type="System.String" DbType="NVarChar(1) NOT NULL" CanBeNull="false" />
    173       <Column Name="Name" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    174     </ElementType>
    175   </Function>
    176   <Function Name="dbo.aspnet_UsersInRoles_IsUserInRole" Method="aspnet_UsersInRoles_IsUserInRole">
    177     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    178     <Parameter Name="UserName" Parameter="userName" Type="System.String" DbType="NVarChar(256)" />
    179     <Parameter Name="RoleName" Parameter="roleName" Type="System.String" DbType="NVarChar(256)" />
    180     <Return Type="System.Int32" />
    181   </Function>
    182   <Function Name="dbo.aspnet_UsersInRoles_GetUsersInRoles" Method="aspnet_UsersInRoles_GetUsersInRoles">
    183     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    184     <Parameter Name="RoleName" Parameter="roleName" Type="System.String" DbType="NVarChar(256)" />
    185     <ElementType Name="aspnet_UsersInRoles_GetUsersInRolesResult">
    186       <Column Name="UserName" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    187     </ElementType>
    188   </Function>
    189   <Function Name="dbo.aspnet_UsersInRoles_GetRolesForUser" Method="aspnet_UsersInRoles_GetRolesForUser">
    190     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    191     <Parameter Name="UserName" Parameter="userName" Type="System.String" DbType="NVarChar(256)" />
    192     <ElementType Name="aspnet_UsersInRoles_GetRolesForUserResult">
    193       <Column Name="RoleName" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    194     </ElementType>
    195   </Function>
    196   <Function Name="dbo.aspnet_UsersInRoles_FindUsersInRole" Method="aspnet_UsersInRoles_FindUsersInRole">
    197     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    198     <Parameter Name="RoleName" Parameter="roleName" Type="System.String" DbType="NVarChar(256)" />
    199     <Parameter Name="UserNameToMatch" Parameter="userNameToMatch" Type="System.String" DbType="NVarChar(256)" />
    200     <ElementType Name="aspnet_UsersInRoles_FindUsersInRoleResult">
    201       <Column Name="UserName" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    202     </ElementType>
    203   </Function>
    204   <Function Name="dbo.aspnet_Roles_CreateRole" Method="aspnet_Roles_CreateRole">
    205     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    206     <Parameter Name="RoleName" Parameter="roleName" Type="System.String" DbType="NVarChar(256)" />
    207     <Return Type="System.Int32" />
    208   </Function>
    209   <Function Name="dbo.aspnet_Roles_DeleteRole" Method="aspnet_Roles_DeleteRole">
    210     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    211     <Parameter Name="RoleName" Parameter="roleName" Type="System.String" DbType="NVarChar(256)" />
    212     <Parameter Name="DeleteOnlyIfRoleIsEmpty" Parameter="deleteOnlyIfRoleIsEmpty" Type="System.Boolean" DbType="Bit" />
    213     <Return Type="System.Int32" />
    214   </Function>
    215   <Function Name="dbo.aspnet_Applications_CreateApplication" Method="aspnet_Applications_CreateApplication">
    216     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    217     <Parameter Name="ApplicationId" Parameter="applicationId" Type="System.Guid" DbType="UniqueIdentifier" Direction="InOut" />
    218     <Return Type="System.Int32" />
    219   </Function>
    220   <Function Name="dbo.aspnet_Roles_RoleExists" Method="aspnet_Roles_RoleExists">
    221     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    222     <Parameter Name="RoleName" Parameter="roleName" Type="System.String" DbType="NVarChar(256)" />
    223     <Return Type="System.Int32" />
    224   </Function>
    225   <Function Name="dbo.aspnet_Roles_GetAllRoles" Method="aspnet_Roles_GetAllRoles">
    226     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    227     <ElementType Name="aspnet_Roles_GetAllRolesResult">
    228       <Column Name="RoleName" Type="System.String" DbType="NVarChar(256) NOT NULL" CanBeNull="false" />
    229     </ElementType>
    230   </Function>
    231   <Function Name="dbo.aspnet_Membership_CreateUser" Method="aspnet_Membership_CreateUser">
    232     <Parameter Name="ApplicationName" Parameter="applicationName" Type="System.String" DbType="NVarChar(256)" />
    233     <Parameter Name="UserName" Parameter="userName" Type="System.String" DbType="NVarChar(256)" />
    234     <Parameter Name="Password" Parameter="password" Type="System.String" DbType="NVarChar(128)" />
    235     <Parameter Name="PasswordSalt" Parameter="passwordSalt" Type="System.String" DbType="NVarChar(128)" />
    236     <Parameter Name="Email" Parameter="email" Type="System.String" DbType="NVarChar(256)" />
    237     <Parameter Name="PasswordQuestion" Parameter="passwordQuestion" Type="System.String" DbType="NVarChar(256)" />
     82    <Parameter Name="PasswordFormat" Parameter="passwordFormat" Type="System.Int32" DbType="Int" />
    23883    <Parameter Name="PasswordAnswer" Parameter="passwordAnswer" Type="System.String" DbType="NVarChar(128)" />
    239     <Parameter Name="IsApproved" Parameter="isApproved" Type="System.Boolean" DbType="Bit" />
    240     <Parameter Name="CurrentTimeUtc" Parameter="currentTimeUtc" Type="System.DateTime" DbType="DateTime" />
    241     <Parameter Name="CreateDate" Parameter="createDate" Type="System.DateTime" DbType="DateTime" />
    242     <Parameter Name="UniqueEmail" Parameter="uniqueEmail" Type="System.Int32" DbType="Int" />
    243     <Parameter Name="PasswordFormat" Parameter="passwordFormat" Type="System.Int32" DbType="Int" />
    244     <Parameter Name="UserId" Parameter="userId" Type="System.Guid" DbType="UniqueIdentifier" Direction="InOut" />
    24584    <Return Type="System.Int32" />
    24685  </Function>
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataAccess/UserManagement.dbml.layout

    r4647 r5257  
    11<?xml version="1.0" encoding="utf-8"?>
    2 <ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 13.375, 11.75" name="UserManagement">
     2<ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 11, 10.25" name="UserManagement">
    33  <DataContextMoniker Name="/UserManagementDataContext" />
    44  <nestedChildShapes>
    5     <classShape Id="ec805621-974f-4416-9b33-1f52c9efaa02" absoluteBounds="1.875, 6, 2, 1.5785953776041666">
     5    <classShape Id="ec805621-974f-4416-9b33-1f52c9efaa02" absoluteBounds="0.75, 5.125, 2, 1.4248478190104166">
    66      <DataClassMoniker Name="/UserManagementDataContext/aspnet_Application" />
    77      <nestedChildShapes>
    8         <elementListCompartment Id="d2f5e07d-74d6-4c49-808d-d6ea4f17d8fc" absoluteBounds="1.8899999999999997, 6.46, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     8        <elementListCompartment Id="d2f5e07d-74d6-4c49-808d-d6ea4f17d8fc" absoluteBounds="0.76499999999999968, 5.585, 1.9700000000000002, 0.86484781901041663" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    99      </nestedChildShapes>
    1010    </classShape>
    11     <classShape Id="7dc71a3b-61f9-453c-8e9b-ebf950468436" absoluteBounds="4.625, 0.5, 2, 4.8477197265625">
     11    <classShape Id="7dc71a3b-61f9-453c-8e9b-ebf950468436" absoluteBounds="6.25, 3.125, 2, 4.2187524414062487">
    1212      <DataClassMoniker Name="/UserManagementDataContext/aspnet_Membership" />
    1313      <nestedChildShapes>
    14         <elementListCompartment Id="4245b681-0b9d-40fd-bda3-b6fc3aadf805" absoluteBounds="4.6400000000000006, 0.96, 1.9700000000000002, 4.2877197265625" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     14        <elementListCompartment Id="4245b681-0b9d-40fd-bda3-b6fc3aadf805" absoluteBounds="6.2650000000000006, 3.585, 1.9700000000000002, 3.65875244140625" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    1515      </nestedChildShapes>
    1616    </classShape>
    17     <associationConnector edgePoints="[(3.78125 : 6); (3.78125 : 2.56814697265625); (4.625 : 2.56814697265625)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     17    <associationConnector edgePoints="[(2.75 : 6.14011881510417); (4.91666666666667 : 6.14011881510417 : JumpStart); (5.08333333333333 : 6.14011881510417 : JumpEnd); (6.25 : 6.14011881510417)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    1818      <AssociationMoniker Name="/UserManagementDataContext/aspnet_Application/aspnet_Application_aspnet_Membership" />
    1919      <nodes>
     
    2222      </nodes>
    2323    </associationConnector>
    24     <classShape Id="7343514d-b96d-43be-aac1-1642639dfda8" absoluteBounds="1.5, 3.125, 2, 1.5785953776041666">
    25       <DataClassMoniker Name="/UserManagementDataContext/aspnet_Path" />
     24    <classShape Id="833e2796-ac5a-4a62-b3a1-6cfd97c9a7b1" absoluteBounds="2.125, 8.25, 2, 1.5891951497395844">
     25      <DataClassMoniker Name="/UserManagementDataContext/aspnet_Role" />
    2626      <nestedChildShapes>
    27         <elementListCompartment Id="0b555909-5553-437e-8fb3-d8bb04dd2960" absoluteBounds="1.5149999999999997, 3.585, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     27        <elementListCompartment Id="4ebc7fb9-2342-4359-950b-d59908adb887" absoluteBounds="2.1400000000000006, 8.71, 1.9700000000000002, 1.0291951497395833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    2828      </nestedChildShapes>
    2929    </classShape>
    30     <associationConnector edgePoints="[(2.6875 : 6); (2.6875 : 4.70359537760417)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    31       <AssociationMoniker Name="/UserManagementDataContext/aspnet_Application/aspnet_Application_aspnet_Path" />
    32       <nodes>
    33         <classShapeMoniker Id="ec805621-974f-4416-9b33-1f52c9efaa02" />
    34         <classShapeMoniker Id="7343514d-b96d-43be-aac1-1642639dfda8" />
    35       </nodes>
    36     </associationConnector>
    37     <classShape Id="3b521864-bc4c-4283-8733-af46ed4fe8a7" absoluteBounds="1.625, 0.625, 2, 1.3862939453125">
    38       <DataClassMoniker Name="/UserManagementDataContext/aspnet_PersonalizationAllUser" />
    39       <nestedChildShapes>
    40         <elementListCompartment Id="508a8e64-87d9-40bc-8fdb-f1cf0f62124c" absoluteBounds="1.6400000000000001, 1.085, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    41       </nestedChildShapes>
    42     </classShape>
    43     <associationConnector edgePoints="[(3.05292168109001 : 3.125); (3.05292168109001 : 2.0112939453125)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    44       <AssociationMoniker Name="/UserManagementDataContext/aspnet_Path/aspnet_Path_aspnet_PersonalizationAllUser" />
    45       <nodes>
    46         <classShapeMoniker Id="7343514d-b96d-43be-aac1-1642639dfda8" />
    47         <classShapeMoniker Id="3b521864-bc4c-4283-8733-af46ed4fe8a7" />
    48       </nodes>
    49     </associationConnector>
    50     <classShape Id="5013ff3a-8cce-4550-ac77-e9cee0ddc9ba" absoluteBounds="11.125, 1.75, 2, 1.7708968098958331">
    51       <DataClassMoniker Name="/UserManagementDataContext/aspnet_PersonalizationPerUser" />
    52       <nestedChildShapes>
    53         <elementListCompartment Id="3c2e4362-9781-4d55-af9c-599ad3861a16" absoluteBounds="11.14, 2.21, 1.9700000000000002, 1.2108968098958333" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    54       </nestedChildShapes>
    55     </classShape>
    56     <associationConnector edgePoints="[(3.5 : 3.91429768880208); (4.375 : 3.91429768880208); (4.375 : 5.5977197265625); (7.875 : 5.5977197265625); (7.875 : 3.875); (12.39062575 : 3.875); (12.39062575 : 3.52089680989583)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    57       <AssociationMoniker Name="/UserManagementDataContext/aspnet_Path/aspnet_Path_aspnet_PersonalizationPerUser" />
    58       <nodes>
    59         <classShapeMoniker Id="7343514d-b96d-43be-aac1-1642639dfda8" />
    60         <classShapeMoniker Id="5013ff3a-8cce-4550-ac77-e9cee0ddc9ba" />
    61       </nodes>
    62     </associationConnector>
    63     <classShape Id="86d1546c-0a9b-4dd7-844e-6eb30600f1b2" absoluteBounds="8, 0.5, 2, 1.7708968098958331">
    64       <DataClassMoniker Name="/UserManagementDataContext/aspnet_Profile" />
    65       <nestedChildShapes>
    66         <elementListCompartment Id="75b89f84-1a81-4940-8c47-c3935a3bc84d" absoluteBounds="8.015, 0.96, 1.9700000000000002, 1.2108968098958333" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    67       </nestedChildShapes>
    68     </classShape>
    69     <classShape Id="833e2796-ac5a-4a62-b3a1-6cfd97c9a7b1" absoluteBounds="3.625, 9, 2, 1.7708968098958331">
    70       <DataClassMoniker Name="/UserManagementDataContext/aspnet_Role" />
    71       <nestedChildShapes>
    72         <elementListCompartment Id="4ebc7fb9-2342-4359-950b-d59908adb887" absoluteBounds="3.6400000000000006, 9.46, 1.9700000000000002, 1.2108968098958333" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    73       </nestedChildShapes>
    74     </classShape>
    75     <associationConnector edgePoints="[(2.7499995 : 7.57859537760417); (2.7499995 : 9.88544840494792); (3.625 : 9.88544840494792)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     30    <associationConnector edgePoints="[(2.4375 : 6.54984781901042); (2.4375 : 8.25)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    7631      <AssociationMoniker Name="/UserManagementDataContext/aspnet_Application/aspnet_Application_aspnet_Role" />
    7732      <nodes>
     
    8035      </nodes>
    8136    </associationConnector>
    82     <classShape Id="da1e6fa8-2149-42f4-a56c-f492cd62deb6" absoluteBounds="6.625, 10.125, 2, 1.3862939453125">
    83       <DataClassMoniker Name="/UserManagementDataContext/aspnet_SchemaVersion" />
     37    <classShape Id="6bceff2f-2d6b-4f24-b50d-2296ff7f62c3" absoluteBounds="3.5, 3.75, 2, 1.9178898111979166">
     38      <DataClassMoniker Name="/UserManagementDataContext/aspnet_User" />
    8439      <nestedChildShapes>
    85         <elementListCompartment Id="7a2a020f-f4bb-490e-9a84-81f0f66b5e68" absoluteBounds="6.6400000000000006, 10.585, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     40        <elementListCompartment Id="bf2f1444-f051-4d39-9055-c21643a53875" absoluteBounds="3.5150000000000006, 4.2100000000000009, 1.9700000000000002, 1.3578898111979165" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    8641      </nestedChildShapes>
    8742    </classShape>
    88     <classShape Id="6bceff2f-2d6b-4f24-b50d-2296ff7f62c3" absoluteBounds="8.125, 4.125, 2, 2.1554996744791666">
    89       <DataClassMoniker Name="/UserManagementDataContext/aspnet_User" />
    90       <nestedChildShapes>
    91         <elementListCompartment Id="bf2f1444-f051-4d39-9055-c21643a53875" absoluteBounds="8.14, 4.5850000000000009, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    92       </nestedChildShapes>
    93     </classShape>
    94     <associationConnector edgePoints="[(8.125 : 4.73635986328125); (6.625 : 4.73635986328125)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     43    <associationConnector edgePoints="[(5.5 : 4.70894490559896); (6.25 : 4.70894490559896)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    9544      <AssociationMoniker Name="/UserManagementDataContext/aspnet_User/aspnet_User_aspnet_Membership" />
    9645      <nodes>
     
    9948      </nodes>
    10049    </associationConnector>
    101     <associationConnector edgePoints="[(10.125 : 5.20274983723958); (11.5937475 : 5.20274983723958); (11.5937475 : 3.52089680989583)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    102       <AssociationMoniker Name="/UserManagementDataContext/aspnet_User/aspnet_User_aspnet_PersonalizationPerUser" />
    103       <nodes>
    104         <classShapeMoniker Id="6bceff2f-2d6b-4f24-b50d-2296ff7f62c3" />
    105         <classShapeMoniker Id="5013ff3a-8cce-4550-ac77-e9cee0ddc9ba" />
    106       </nodes>
    107     </associationConnector>
    108     <associationConnector edgePoints="[(9.0625 : 4.125); (9.0625 : 2.27089680989583)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    109       <AssociationMoniker Name="/UserManagementDataContext/aspnet_User/aspnet_User_aspnet_Profile" />
    110       <nodes>
    111         <classShapeMoniker Id="6bceff2f-2d6b-4f24-b50d-2296ff7f62c3" />
    112         <classShapeMoniker Id="86d1546c-0a9b-4dd7-844e-6eb30600f1b2" />
    113       </nodes>
    114     </associationConnector>
    115     <associationConnector edgePoints="[(3.875 : 6.96080002604167); (9.2500025 : 6.96080002604167); (9.2500025 : 6.28049967447917)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     50    <associationConnector edgePoints="[(2.75 : 5.39644490559896); (3.5 : 5.39644490559896)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    11651      <AssociationMoniker Name="/UserManagementDataContext/aspnet_Application/aspnet_Application_aspnet_User" />
    11752      <nodes>
     
    12055      </nodes>
    12156    </associationConnector>
    122     <classShape Id="a25c9c99-735f-4294-aabd-ba04c3f98575" absoluteBounds="6.5, 8.25, 2, 1.1939925130208333">
     57    <classShape Id="a25c9c99-735f-4294-aabd-ba04c3f98575" absoluteBounds="6.25, 8.875, 2, 1.0961531575520844">
    12358      <DataClassMoniker Name="/UserManagementDataContext/aspnet_UsersInRole" />
    12459      <nestedChildShapes>
    125         <elementListCompartment Id="f223e83f-c7c9-4564-8465-9e039f273520" absoluteBounds="6.5150000000000006, 8.71, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     60        <elementListCompartment Id="f223e83f-c7c9-4564-8465-9e039f273520" absoluteBounds="6.2650000000000006, 9.335, 1.9700000000000002, 0.53615315755208326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    12661      </nestedChildShapes>
    12762    </classShape>
    128     <associationConnector edgePoints="[(5.625 : 9.22199625651042); (6.5 : 9.22199625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     63    <associationConnector edgePoints="[(4.125 : 9.5409904695638); (6.25 : 9.5409904695638)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    12964      <AssociationMoniker Name="/UserManagementDataContext/aspnet_Role/aspnet_Role_aspnet_UsersInRole" />
    13065      <nodes>
     
    13368      </nodes>
    13469    </associationConnector>
    135     <associationConnector edgePoints="[(8.3125 : 6.28049967447917); (8.3125 : 8.25)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     70    <associationConnector edgePoints="[(5 : 5.66788981119792); (5 : 9.11778578938802); (6.25 : 9.11778578938802)]" fixedFrom="Algorithm" fixedTo="Algorithm">
    13671      <AssociationMoniker Name="/UserManagementDataContext/aspnet_User/aspnet_User_aspnet_UsersInRole" />
    13772      <nodes>
     
    14075      </nodes>
    14176    </associationConnector>
    142     <classShape Id="c85c3936-32dd-417e-a0af-7a03fb14cc36" absoluteBounds="10.25, 7.375, 2, 3.6939111328124996">
    143       <DataClassMoniker Name="/UserManagementDataContext/aspnet_WebEvent_Event" />
    144       <nestedChildShapes>
    145         <elementListCompartment Id="6a3d388c-ec23-47c6-a139-35716577f2d8" absoluteBounds="10.265, 7.8350000000000009, 1.9700000000000002, 3.1339111328125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    146       </nestedChildShapes>
    147     </classShape>
    14877  </nestedChildShapes>
    14978</ordesignerObjectsDiagram>
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataAccess/UserManagement.designer.cs

    r4647 r5257  
    3737    partial void Updateaspnet_Membership(aspnet_Membership instance);
    3838    partial void Deleteaspnet_Membership(aspnet_Membership instance);
    39     partial void Insertaspnet_Path(aspnet_Path instance);
    40     partial void Updateaspnet_Path(aspnet_Path instance);
    41     partial void Deleteaspnet_Path(aspnet_Path instance);
    42     partial void Insertaspnet_PersonalizationAllUser(aspnet_PersonalizationAllUser instance);
    43     partial void Updateaspnet_PersonalizationAllUser(aspnet_PersonalizationAllUser instance);
    44     partial void Deleteaspnet_PersonalizationAllUser(aspnet_PersonalizationAllUser instance);
    45     partial void Insertaspnet_PersonalizationPerUser(aspnet_PersonalizationPerUser instance);
    46     partial void Updateaspnet_PersonalizationPerUser(aspnet_PersonalizationPerUser instance);
    47     partial void Deleteaspnet_PersonalizationPerUser(aspnet_PersonalizationPerUser instance);
    48     partial void Insertaspnet_Profile(aspnet_Profile instance);
    49     partial void Updateaspnet_Profile(aspnet_Profile instance);
    50     partial void Deleteaspnet_Profile(aspnet_Profile instance);
    5139    partial void Insertaspnet_Role(aspnet_Role instance);
    5240    partial void Updateaspnet_Role(aspnet_Role instance);
    5341    partial void Deleteaspnet_Role(aspnet_Role instance);
    54     partial void Insertaspnet_SchemaVersion(aspnet_SchemaVersion instance);
    55     partial void Updateaspnet_SchemaVersion(aspnet_SchemaVersion instance);
    56     partial void Deleteaspnet_SchemaVersion(aspnet_SchemaVersion instance);
    5742    partial void Insertaspnet_User(aspnet_User instance);
    5843    partial void Updateaspnet_User(aspnet_User instance);
     
    6146    partial void Updateaspnet_UsersInRole(aspnet_UsersInRole instance);
    6247    partial void Deleteaspnet_UsersInRole(aspnet_UsersInRole instance);
    63     partial void Insertaspnet_WebEvent_Event(aspnet_WebEvent_Event instance);
    64     partial void Updateaspnet_WebEvent_Event(aspnet_WebEvent_Event instance);
    65     partial void Deleteaspnet_WebEvent_Event(aspnet_WebEvent_Event instance);
    6648    #endregion
    6749   
     
    11294    }
    11395   
    114     public System.Data.Linq.Table<aspnet_Path> aspnet_Paths
    115     {
    116       get
    117       {
    118         return this.GetTable<aspnet_Path>();
    119       }
    120     }
    121    
    122     public System.Data.Linq.Table<aspnet_PersonalizationAllUser> aspnet_PersonalizationAllUsers
    123     {
    124       get
    125       {
    126         return this.GetTable<aspnet_PersonalizationAllUser>();
    127       }
    128     }
    129    
    130     public System.Data.Linq.Table<aspnet_PersonalizationPerUser> aspnet_PersonalizationPerUsers
    131     {
    132       get
    133       {
    134         return this.GetTable<aspnet_PersonalizationPerUser>();
    135       }
    136     }
    137    
    138     public System.Data.Linq.Table<aspnet_Profile> aspnet_Profiles
    139     {
    140       get
    141       {
    142         return this.GetTable<aspnet_Profile>();
    143       }
    144     }
    145    
    14696    public System.Data.Linq.Table<aspnet_Role> aspnet_Roles
    14797    {
     
    152102    }
    153103   
    154     public System.Data.Linq.Table<aspnet_SchemaVersion> aspnet_SchemaVersions
    155     {
    156       get
    157       {
    158         return this.GetTable<aspnet_SchemaVersion>();
    159       }
    160     }
    161    
    162104    public System.Data.Linq.Table<aspnet_User> aspnet_Users
    163105    {
     
    176118    }
    177119   
    178     public System.Data.Linq.Table<aspnet_WebEvent_Event> aspnet_WebEvent_Events
    179     {
    180       get
    181       {
    182         return this.GetTable<aspnet_WebEvent_Event>();
    183       }
    184     }
    185    
    186     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Users_DeleteUser")]
    187     public int aspnet_Users_DeleteUser([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserName", DbType="NVarChar(256)")] string userName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="TablesToDeleteFrom", DbType="Int")] System.Nullable<int> tablesToDeleteFrom, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="NumTablesDeletedFrom", DbType="Int")] ref System.Nullable<int> numTablesDeletedFrom)
    188     {
    189       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userName, tablesToDeleteFrom, numTablesDeletedFrom);
    190       numTablesDeletedFrom = ((System.Nullable<int>)(result.GetParameterValue(3)));
    191       return ((int)(result.ReturnValue));
    192     }
    193    
    194     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Users_CreateUser")]
    195     public int aspnet_Users_CreateUser([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationId", DbType="UniqueIdentifier")] System.Nullable<System.Guid> applicationId, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserName", DbType="NVarChar(256)")] string userName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="IsUserAnonymous", DbType="Bit")] System.Nullable<bool> isUserAnonymous, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="LastActivityDate", DbType="DateTime")] System.Nullable<System.DateTime> lastActivityDate, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserId", DbType="UniqueIdentifier")] ref System.Nullable<System.Guid> userId)
    196     {
    197       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationId, userName, isUserAnonymous, lastActivityDate, userId);
    198       userId = ((System.Nullable<System.Guid>)(result.GetParameterValue(4)));
    199       return ((int)(result.ReturnValue));
    200     }
    201    
    202     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_UsersInRoles_AddUsersToRoles")]
    203     public ISingleResult<aspnet_UsersInRoles_AddUsersToRolesResult> aspnet_UsersInRoles_AddUsersToRoles([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserNames", DbType="NVarChar(4000)")] string userNames, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleNames", DbType="NVarChar(4000)")] string roleNames, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="CurrentTimeUtc", DbType="DateTime")] System.Nullable<System.DateTime> currentTimeUtc)
    204     {
    205       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userNames, roleNames, currentTimeUtc);
    206       return ((ISingleResult<aspnet_UsersInRoles_AddUsersToRolesResult>)(result.ReturnValue));
    207     }
    208    
    209     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_UsersInRoles_RemoveUsersFromRoles")]
    210     public ISingleResult<aspnet_UsersInRoles_RemoveUsersFromRolesResult> aspnet_UsersInRoles_RemoveUsersFromRoles([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserNames", DbType="NVarChar(4000)")] string userNames, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleNames", DbType="NVarChar(4000)")] string roleNames)
    211     {
    212       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userNames, roleNames);
    213       return ((ISingleResult<aspnet_UsersInRoles_RemoveUsersFromRolesResult>)(result.ReturnValue));
    214     }
    215    
    216     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_UsersInRoles_IsUserInRole")]
    217     public int aspnet_UsersInRoles_IsUserInRole([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserName", DbType="NVarChar(256)")] string userName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleName", DbType="NVarChar(256)")] string roleName)
    218     {
    219       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userName, roleName);
    220       return ((int)(result.ReturnValue));
    221     }
    222    
    223     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_UsersInRoles_GetUsersInRoles")]
    224     public ISingleResult<aspnet_UsersInRoles_GetUsersInRolesResult> aspnet_UsersInRoles_GetUsersInRoles([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleName", DbType="NVarChar(256)")] string roleName)
    225     {
    226       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, roleName);
    227       return ((ISingleResult<aspnet_UsersInRoles_GetUsersInRolesResult>)(result.ReturnValue));
    228     }
    229    
    230     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_UsersInRoles_GetRolesForUser")]
    231     public ISingleResult<aspnet_UsersInRoles_GetRolesForUserResult> aspnet_UsersInRoles_GetRolesForUser([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserName", DbType="NVarChar(256)")] string userName)
    232     {
    233       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userName);
    234       return ((ISingleResult<aspnet_UsersInRoles_GetRolesForUserResult>)(result.ReturnValue));
    235     }
    236    
    237     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_UsersInRoles_FindUsersInRole")]
    238     public ISingleResult<aspnet_UsersInRoles_FindUsersInRoleResult> aspnet_UsersInRoles_FindUsersInRole([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleName", DbType="NVarChar(256)")] string roleName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserNameToMatch", DbType="NVarChar(256)")] string userNameToMatch)
    239     {
    240       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, roleName, userNameToMatch);
    241       return ((ISingleResult<aspnet_UsersInRoles_FindUsersInRoleResult>)(result.ReturnValue));
    242     }
    243    
    244     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Roles_CreateRole")]
    245     public int aspnet_Roles_CreateRole([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleName", DbType="NVarChar(256)")] string roleName)
    246     {
    247       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, roleName);
    248       return ((int)(result.ReturnValue));
    249     }
    250    
    251     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Roles_DeleteRole")]
    252     public int aspnet_Roles_DeleteRole([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleName", DbType="NVarChar(256)")] string roleName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="DeleteOnlyIfRoleIsEmpty", DbType="Bit")] System.Nullable<bool> deleteOnlyIfRoleIsEmpty)
    253     {
    254       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, roleName, deleteOnlyIfRoleIsEmpty);
    255       return ((int)(result.ReturnValue));
    256     }
    257    
    258     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Applications_CreateApplication")]
    259     public int aspnet_Applications_CreateApplication([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationId", DbType="UniqueIdentifier")] ref System.Nullable<System.Guid> applicationId)
    260     {
    261       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, applicationId);
    262       applicationId = ((System.Nullable<System.Guid>)(result.GetParameterValue(1)));
    263       return ((int)(result.ReturnValue));
    264     }
    265    
    266     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Roles_RoleExists")]
    267     public int aspnet_Roles_RoleExists([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="RoleName", DbType="NVarChar(256)")] string roleName)
    268     {
    269       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, roleName);
    270       return ((int)(result.ReturnValue));
    271     }
    272    
    273     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Roles_GetAllRoles")]
    274     public ISingleResult<aspnet_Roles_GetAllRolesResult> aspnet_Roles_GetAllRoles([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName)
    275     {
    276       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName);
    277       return ((ISingleResult<aspnet_Roles_GetAllRolesResult>)(result.ReturnValue));
    278     }
    279    
    280     [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Membership_CreateUser")]
    281     public int aspnet_Membership_CreateUser([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserName", DbType="NVarChar(256)")] string userName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="Password", DbType="NVarChar(128)")] string password, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordSalt", DbType="NVarChar(128)")] string passwordSalt, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="Email", DbType="NVarChar(256)")] string email, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordQuestion", DbType="NVarChar(256)")] string passwordQuestion, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordAnswer", DbType="NVarChar(128)")] string passwordAnswer, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="IsApproved", DbType="Bit")] System.Nullable<bool> isApproved, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="CurrentTimeUtc", DbType="DateTime")] System.Nullable<System.DateTime> currentTimeUtc, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="CreateDate", DbType="DateTime")] System.Nullable<System.DateTime> createDate, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UniqueEmail", DbType="Int")] System.Nullable<int> uniqueEmail, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordFormat", DbType="Int")] System.Nullable<int> passwordFormat, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserId", DbType="UniqueIdentifier")] ref System.Nullable<System.Guid> userId)
    282     {
    283       IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userName, password, passwordSalt, email, passwordQuestion, passwordAnswer, isApproved, currentTimeUtc, createDate, uniqueEmail, passwordFormat, userId);
    284       userId = ((System.Nullable<System.Guid>)(result.GetParameterValue(12)));
     120    [global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.aspnet_Membership_ResetPassword")]
     121    public int aspnet_Membership_ResetPassword([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ApplicationName", DbType="NVarChar(256)")] string applicationName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="UserName", DbType="NVarChar(256)")] string userName, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="NewPassword", DbType="NVarChar(128)")] string newPassword, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="MaxInvalidPasswordAttempts", DbType="Int")] System.Nullable<int> maxInvalidPasswordAttempts, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordAttemptWindow", DbType="Int")] System.Nullable<int> passwordAttemptWindow, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordSalt", DbType="NVarChar(128)")] string passwordSalt, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="CurrentTimeUtc", DbType="DateTime")] System.Nullable<System.DateTime> currentTimeUtc, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordFormat", DbType="Int")] System.Nullable<int> passwordFormat, [global::System.Data.Linq.Mapping.ParameterAttribute(Name="PasswordAnswer", DbType="NVarChar(128)")] string passwordAnswer)
     122    {
     123      IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), applicationName, userName, newPassword, maxInvalidPasswordAttempts, passwordAttemptWindow, passwordSalt, currentTimeUtc, passwordFormat, passwordAnswer);
    285124      return ((int)(result.ReturnValue));
    286125    }
     
    302141   
    303142    private EntitySet<aspnet_Membership> _aspnet_Memberships;
    304    
    305     private EntitySet<aspnet_Path> _aspnet_Paths;
    306143   
    307144    private EntitySet<aspnet_Role> _aspnet_Roles;
     
    326163    {
    327164      this._aspnet_Memberships = new EntitySet<aspnet_Membership>(new Action<aspnet_Membership>(this.attach_aspnet_Memberships), new Action<aspnet_Membership>(this.detach_aspnet_Memberships));
    328       this._aspnet_Paths = new EntitySet<aspnet_Path>(new Action<aspnet_Path>(this.attach_aspnet_Paths), new Action<aspnet_Path>(this.detach_aspnet_Paths));
    329165      this._aspnet_Roles = new EntitySet<aspnet_Role>(new Action<aspnet_Role>(this.attach_aspnet_Roles), new Action<aspnet_Role>(this.detach_aspnet_Roles));
    330166      this._aspnet_Users = new EntitySet<aspnet_User>(new Action<aspnet_User>(this.attach_aspnet_Users), new Action<aspnet_User>(this.detach_aspnet_Users));
     
    425261    }
    426262   
    427     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Application_aspnet_Path", Storage="_aspnet_Paths", ThisKey="ApplicationId", OtherKey="ApplicationId")]
    428     public EntitySet<aspnet_Path> aspnet_Paths
    429     {
    430       get
    431       {
    432         return this._aspnet_Paths;
    433       }
    434       set
    435       {
    436         this._aspnet_Paths.Assign(value);
    437       }
    438     }
    439    
    440263    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Application_aspnet_Role", Storage="_aspnet_Roles", ThisKey="ApplicationId", OtherKey="ApplicationId")]
    441264    public EntitySet<aspnet_Role> aspnet_Roles
     
    491314   
    492315    private void detach_aspnet_Memberships(aspnet_Membership entity)
    493     {
    494       this.SendPropertyChanging();
    495       entity.aspnet_Application = null;
    496     }
    497    
    498     private void attach_aspnet_Paths(aspnet_Path entity)
    499     {
    500       this.SendPropertyChanging();
    501       entity.aspnet_Application = this;
    502     }
    503    
    504     private void detach_aspnet_Paths(aspnet_Path entity)
    505316    {
    506317      this.SendPropertyChanging();
     
    1157968  }
    1158969 
    1159   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_Paths")]
    1160   public partial class aspnet_Path : INotifyPropertyChanging, INotifyPropertyChanged
    1161   {
    1162    
    1163     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1164    
    1165     private System.Guid _ApplicationId;
    1166    
    1167     private System.Guid _PathId;
    1168    
    1169     private string _Path;
    1170    
    1171     private string _LoweredPath;
    1172    
    1173     private EntityRef<aspnet_PersonalizationAllUser> _aspnet_PersonalizationAllUser;
    1174    
    1175     private EntitySet<aspnet_PersonalizationPerUser> _aspnet_PersonalizationPerUsers;
    1176    
    1177     private EntityRef<aspnet_Application> _aspnet_Application;
    1178    
    1179     #region Extensibility Method Definitions
    1180     partial void OnLoaded();
    1181     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1182     partial void OnCreated();
    1183     partial void OnApplicationIdChanging(System.Guid value);
    1184     partial void OnApplicationIdChanged();
    1185     partial void OnPathIdChanging(System.Guid value);
    1186     partial void OnPathIdChanged();
    1187     partial void OnPathChanging(string value);
    1188     partial void OnPathChanged();
    1189     partial void OnLoweredPathChanging(string value);
    1190     partial void OnLoweredPathChanged();
    1191     #endregion
    1192    
    1193     public aspnet_Path()
    1194     {
    1195       this._aspnet_PersonalizationAllUser = default(EntityRef<aspnet_PersonalizationAllUser>);
    1196       this._aspnet_PersonalizationPerUsers = new EntitySet<aspnet_PersonalizationPerUser>(new Action<aspnet_PersonalizationPerUser>(this.attach_aspnet_PersonalizationPerUsers), new Action<aspnet_PersonalizationPerUser>(this.detach_aspnet_PersonalizationPerUsers));
    1197       this._aspnet_Application = default(EntityRef<aspnet_Application>);
    1198       OnCreated();
    1199     }
    1200    
    1201     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApplicationId", DbType="UniqueIdentifier NOT NULL")]
    1202     public System.Guid ApplicationId
    1203     {
    1204       get
    1205       {
    1206         return this._ApplicationId;
    1207       }
    1208       set
    1209       {
    1210         if ((this._ApplicationId != value))
    1211         {
    1212           if (this._aspnet_Application.HasLoadedOrAssignedValue)
    1213           {
    1214             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1215           }
    1216           this.OnApplicationIdChanging(value);
    1217           this.SendPropertyChanging();
    1218           this._ApplicationId = value;
    1219           this.SendPropertyChanged("ApplicationId");
    1220           this.OnApplicationIdChanged();
    1221         }
    1222       }
    1223     }
    1224    
    1225     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PathId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    1226     public System.Guid PathId
    1227     {
    1228       get
    1229       {
    1230         return this._PathId;
    1231       }
    1232       set
    1233       {
    1234         if ((this._PathId != value))
    1235         {
    1236           this.OnPathIdChanging(value);
    1237           this.SendPropertyChanging();
    1238           this._PathId = value;
    1239           this.SendPropertyChanged("PathId");
    1240           this.OnPathIdChanged();
    1241         }
    1242       }
    1243     }
    1244    
    1245     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Path", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    1246     public string Path
    1247     {
    1248       get
    1249       {
    1250         return this._Path;
    1251       }
    1252       set
    1253       {
    1254         if ((this._Path != value))
    1255         {
    1256           this.OnPathChanging(value);
    1257           this.SendPropertyChanging();
    1258           this._Path = value;
    1259           this.SendPropertyChanged("Path");
    1260           this.OnPathChanged();
    1261         }
    1262       }
    1263     }
    1264    
    1265     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LoweredPath", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    1266     public string LoweredPath
    1267     {
    1268       get
    1269       {
    1270         return this._LoweredPath;
    1271       }
    1272       set
    1273       {
    1274         if ((this._LoweredPath != value))
    1275         {
    1276           this.OnLoweredPathChanging(value);
    1277           this.SendPropertyChanging();
    1278           this._LoweredPath = value;
    1279           this.SendPropertyChanged("LoweredPath");
    1280           this.OnLoweredPathChanged();
    1281         }
    1282       }
    1283     }
    1284    
    1285     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Path_aspnet_PersonalizationAllUser", Storage="_aspnet_PersonalizationAllUser", ThisKey="PathId", OtherKey="PathId", IsUnique=true, IsForeignKey=false)]
    1286     public aspnet_PersonalizationAllUser aspnet_PersonalizationAllUser
    1287     {
    1288       get
    1289       {
    1290         return this._aspnet_PersonalizationAllUser.Entity;
    1291       }
    1292       set
    1293       {
    1294         aspnet_PersonalizationAllUser previousValue = this._aspnet_PersonalizationAllUser.Entity;
    1295         if (((previousValue != value)
    1296               || (this._aspnet_PersonalizationAllUser.HasLoadedOrAssignedValue == false)))
    1297         {
    1298           this.SendPropertyChanging();
    1299           if ((previousValue != null))
    1300           {
    1301             this._aspnet_PersonalizationAllUser.Entity = null;
    1302             previousValue.aspnet_Path = null;
    1303           }
    1304           this._aspnet_PersonalizationAllUser.Entity = value;
    1305           if ((value != null))
    1306           {
    1307             value.aspnet_Path = this;
    1308           }
    1309           this.SendPropertyChanged("aspnet_PersonalizationAllUser");
    1310         }
    1311       }
    1312     }
    1313    
    1314     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Path_aspnet_PersonalizationPerUser", Storage="_aspnet_PersonalizationPerUsers", ThisKey="PathId", OtherKey="PathId")]
    1315     public EntitySet<aspnet_PersonalizationPerUser> aspnet_PersonalizationPerUsers
    1316     {
    1317       get
    1318       {
    1319         return this._aspnet_PersonalizationPerUsers;
    1320       }
    1321       set
    1322       {
    1323         this._aspnet_PersonalizationPerUsers.Assign(value);
    1324       }
    1325     }
    1326    
    1327     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Application_aspnet_Path", Storage="_aspnet_Application", ThisKey="ApplicationId", OtherKey="ApplicationId", IsForeignKey=true)]
    1328     public aspnet_Application aspnet_Application
    1329     {
    1330       get
    1331       {
    1332         return this._aspnet_Application.Entity;
    1333       }
    1334       set
    1335       {
    1336         aspnet_Application previousValue = this._aspnet_Application.Entity;
    1337         if (((previousValue != value)
    1338               || (this._aspnet_Application.HasLoadedOrAssignedValue == false)))
    1339         {
    1340           this.SendPropertyChanging();
    1341           if ((previousValue != null))
    1342           {
    1343             this._aspnet_Application.Entity = null;
    1344             previousValue.aspnet_Paths.Remove(this);
    1345           }
    1346           this._aspnet_Application.Entity = value;
    1347           if ((value != null))
    1348           {
    1349             value.aspnet_Paths.Add(this);
    1350             this._ApplicationId = value.ApplicationId;
    1351           }
    1352           else
    1353           {
    1354             this._ApplicationId = default(System.Guid);
    1355           }
    1356           this.SendPropertyChanged("aspnet_Application");
    1357         }
    1358       }
    1359     }
    1360    
    1361     public event PropertyChangingEventHandler PropertyChanging;
    1362    
    1363     public event PropertyChangedEventHandler PropertyChanged;
    1364    
    1365     protected virtual void SendPropertyChanging()
    1366     {
    1367       if ((this.PropertyChanging != null))
    1368       {
    1369         this.PropertyChanging(this, emptyChangingEventArgs);
    1370       }
    1371     }
    1372    
    1373     protected virtual void SendPropertyChanged(String propertyName)
    1374     {
    1375       if ((this.PropertyChanged != null))
    1376       {
    1377         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1378       }
    1379     }
    1380    
    1381     private void attach_aspnet_PersonalizationPerUsers(aspnet_PersonalizationPerUser entity)
    1382     {
    1383       this.SendPropertyChanging();
    1384       entity.aspnet_Path = this;
    1385     }
    1386    
    1387     private void detach_aspnet_PersonalizationPerUsers(aspnet_PersonalizationPerUser entity)
    1388     {
    1389       this.SendPropertyChanging();
    1390       entity.aspnet_Path = null;
    1391     }
    1392   }
    1393  
    1394   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_PersonalizationAllUsers")]
    1395   public partial class aspnet_PersonalizationAllUser : INotifyPropertyChanging, INotifyPropertyChanged
    1396   {
    1397    
    1398     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1399    
    1400     private System.Guid _PathId;
    1401    
    1402     private System.Data.Linq.Binary _PageSettings;
    1403    
    1404     private System.DateTime _LastUpdatedDate;
    1405    
    1406     private EntityRef<aspnet_Path> _aspnet_Path;
    1407    
    1408     #region Extensibility Method Definitions
    1409     partial void OnLoaded();
    1410     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1411     partial void OnCreated();
    1412     partial void OnPathIdChanging(System.Guid value);
    1413     partial void OnPathIdChanged();
    1414     partial void OnPageSettingsChanging(System.Data.Linq.Binary value);
    1415     partial void OnPageSettingsChanged();
    1416     partial void OnLastUpdatedDateChanging(System.DateTime value);
    1417     partial void OnLastUpdatedDateChanged();
    1418     #endregion
    1419    
    1420     public aspnet_PersonalizationAllUser()
    1421     {
    1422       this._aspnet_Path = default(EntityRef<aspnet_Path>);
    1423       OnCreated();
    1424     }
    1425    
    1426     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PathId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    1427     public System.Guid PathId
    1428     {
    1429       get
    1430       {
    1431         return this._PathId;
    1432       }
    1433       set
    1434       {
    1435         if ((this._PathId != value))
    1436         {
    1437           if (this._aspnet_Path.HasLoadedOrAssignedValue)
    1438           {
    1439             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1440           }
    1441           this.OnPathIdChanging(value);
    1442           this.SendPropertyChanging();
    1443           this._PathId = value;
    1444           this.SendPropertyChanged("PathId");
    1445           this.OnPathIdChanged();
    1446         }
    1447       }
    1448     }
    1449    
    1450     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PageSettings", DbType="Image NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
    1451     public System.Data.Linq.Binary PageSettings
    1452     {
    1453       get
    1454       {
    1455         return this._PageSettings;
    1456       }
    1457       set
    1458       {
    1459         if ((this._PageSettings != value))
    1460         {
    1461           this.OnPageSettingsChanging(value);
    1462           this.SendPropertyChanging();
    1463           this._PageSettings = value;
    1464           this.SendPropertyChanged("PageSettings");
    1465           this.OnPageSettingsChanged();
    1466         }
    1467       }
    1468     }
    1469    
    1470     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LastUpdatedDate", DbType="DateTime NOT NULL")]
    1471     public System.DateTime LastUpdatedDate
    1472     {
    1473       get
    1474       {
    1475         return this._LastUpdatedDate;
    1476       }
    1477       set
    1478       {
    1479         if ((this._LastUpdatedDate != value))
    1480         {
    1481           this.OnLastUpdatedDateChanging(value);
    1482           this.SendPropertyChanging();
    1483           this._LastUpdatedDate = value;
    1484           this.SendPropertyChanged("LastUpdatedDate");
    1485           this.OnLastUpdatedDateChanged();
    1486         }
    1487       }
    1488     }
    1489    
    1490     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Path_aspnet_PersonalizationAllUser", Storage="_aspnet_Path", ThisKey="PathId", OtherKey="PathId", IsForeignKey=true)]
    1491     public aspnet_Path aspnet_Path
    1492     {
    1493       get
    1494       {
    1495         return this._aspnet_Path.Entity;
    1496       }
    1497       set
    1498       {
    1499         aspnet_Path previousValue = this._aspnet_Path.Entity;
    1500         if (((previousValue != value)
    1501               || (this._aspnet_Path.HasLoadedOrAssignedValue == false)))
    1502         {
    1503           this.SendPropertyChanging();
    1504           if ((previousValue != null))
    1505           {
    1506             this._aspnet_Path.Entity = null;
    1507             previousValue.aspnet_PersonalizationAllUser = null;
    1508           }
    1509           this._aspnet_Path.Entity = value;
    1510           if ((value != null))
    1511           {
    1512             value.aspnet_PersonalizationAllUser = this;
    1513             this._PathId = value.PathId;
    1514           }
    1515           else
    1516           {
    1517             this._PathId = default(System.Guid);
    1518           }
    1519           this.SendPropertyChanged("aspnet_Path");
    1520         }
    1521       }
    1522     }
    1523    
    1524     public event PropertyChangingEventHandler PropertyChanging;
    1525    
    1526     public event PropertyChangedEventHandler PropertyChanged;
    1527    
    1528     protected virtual void SendPropertyChanging()
    1529     {
    1530       if ((this.PropertyChanging != null))
    1531       {
    1532         this.PropertyChanging(this, emptyChangingEventArgs);
    1533       }
    1534     }
    1535    
    1536     protected virtual void SendPropertyChanged(String propertyName)
    1537     {
    1538       if ((this.PropertyChanged != null))
    1539       {
    1540         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1541       }
    1542     }
    1543   }
    1544  
    1545   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_PersonalizationPerUser")]
    1546   public partial class aspnet_PersonalizationPerUser : INotifyPropertyChanging, INotifyPropertyChanged
    1547   {
    1548    
    1549     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1550    
    1551     private System.Guid _Id;
    1552    
    1553     private System.Nullable<System.Guid> _PathId;
    1554    
    1555     private System.Nullable<System.Guid> _UserId;
    1556    
    1557     private System.Data.Linq.Binary _PageSettings;
    1558    
    1559     private System.DateTime _LastUpdatedDate;
    1560    
    1561     private EntityRef<aspnet_Path> _aspnet_Path;
    1562    
    1563     private EntityRef<aspnet_User> _aspnet_User;
    1564    
    1565     #region Extensibility Method Definitions
    1566     partial void OnLoaded();
    1567     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1568     partial void OnCreated();
    1569     partial void OnIdChanging(System.Guid value);
    1570     partial void OnIdChanged();
    1571     partial void OnPathIdChanging(System.Nullable<System.Guid> value);
    1572     partial void OnPathIdChanged();
    1573     partial void OnUserIdChanging(System.Nullable<System.Guid> value);
    1574     partial void OnUserIdChanged();
    1575     partial void OnPageSettingsChanging(System.Data.Linq.Binary value);
    1576     partial void OnPageSettingsChanged();
    1577     partial void OnLastUpdatedDateChanging(System.DateTime value);
    1578     partial void OnLastUpdatedDateChanged();
    1579     #endregion
    1580    
    1581     public aspnet_PersonalizationPerUser()
    1582     {
    1583       this._aspnet_Path = default(EntityRef<aspnet_Path>);
    1584       this._aspnet_User = default(EntityRef<aspnet_User>);
    1585       OnCreated();
    1586     }
    1587    
    1588     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    1589     public System.Guid Id
    1590     {
    1591       get
    1592       {
    1593         return this._Id;
    1594       }
    1595       set
    1596       {
    1597         if ((this._Id != value))
    1598         {
    1599           this.OnIdChanging(value);
    1600           this.SendPropertyChanging();
    1601           this._Id = value;
    1602           this.SendPropertyChanged("Id");
    1603           this.OnIdChanged();
    1604         }
    1605       }
    1606     }
    1607    
    1608     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PathId", DbType="UniqueIdentifier")]
    1609     public System.Nullable<System.Guid> PathId
    1610     {
    1611       get
    1612       {
    1613         return this._PathId;
    1614       }
    1615       set
    1616       {
    1617         if ((this._PathId != value))
    1618         {
    1619           if (this._aspnet_Path.HasLoadedOrAssignedValue)
    1620           {
    1621             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1622           }
    1623           this.OnPathIdChanging(value);
    1624           this.SendPropertyChanging();
    1625           this._PathId = value;
    1626           this.SendPropertyChanged("PathId");
    1627           this.OnPathIdChanged();
    1628         }
    1629       }
    1630     }
    1631    
    1632     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier")]
    1633     public System.Nullable<System.Guid> UserId
    1634     {
    1635       get
    1636       {
    1637         return this._UserId;
    1638       }
    1639       set
    1640       {
    1641         if ((this._UserId != value))
    1642         {
    1643           if (this._aspnet_User.HasLoadedOrAssignedValue)
    1644           {
    1645             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1646           }
    1647           this.OnUserIdChanging(value);
    1648           this.SendPropertyChanging();
    1649           this._UserId = value;
    1650           this.SendPropertyChanged("UserId");
    1651           this.OnUserIdChanged();
    1652         }
    1653       }
    1654     }
    1655    
    1656     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PageSettings", DbType="Image NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
    1657     public System.Data.Linq.Binary PageSettings
    1658     {
    1659       get
    1660       {
    1661         return this._PageSettings;
    1662       }
    1663       set
    1664       {
    1665         if ((this._PageSettings != value))
    1666         {
    1667           this.OnPageSettingsChanging(value);
    1668           this.SendPropertyChanging();
    1669           this._PageSettings = value;
    1670           this.SendPropertyChanged("PageSettings");
    1671           this.OnPageSettingsChanged();
    1672         }
    1673       }
    1674     }
    1675    
    1676     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LastUpdatedDate", DbType="DateTime NOT NULL")]
    1677     public System.DateTime LastUpdatedDate
    1678     {
    1679       get
    1680       {
    1681         return this._LastUpdatedDate;
    1682       }
    1683       set
    1684       {
    1685         if ((this._LastUpdatedDate != value))
    1686         {
    1687           this.OnLastUpdatedDateChanging(value);
    1688           this.SendPropertyChanging();
    1689           this._LastUpdatedDate = value;
    1690           this.SendPropertyChanged("LastUpdatedDate");
    1691           this.OnLastUpdatedDateChanged();
    1692         }
    1693       }
    1694     }
    1695    
    1696     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_Path_aspnet_PersonalizationPerUser", Storage="_aspnet_Path", ThisKey="PathId", OtherKey="PathId", IsForeignKey=true)]
    1697     public aspnet_Path aspnet_Path
    1698     {
    1699       get
    1700       {
    1701         return this._aspnet_Path.Entity;
    1702       }
    1703       set
    1704       {
    1705         aspnet_Path previousValue = this._aspnet_Path.Entity;
    1706         if (((previousValue != value)
    1707               || (this._aspnet_Path.HasLoadedOrAssignedValue == false)))
    1708         {
    1709           this.SendPropertyChanging();
    1710           if ((previousValue != null))
    1711           {
    1712             this._aspnet_Path.Entity = null;
    1713             previousValue.aspnet_PersonalizationPerUsers.Remove(this);
    1714           }
    1715           this._aspnet_Path.Entity = value;
    1716           if ((value != null))
    1717           {
    1718             value.aspnet_PersonalizationPerUsers.Add(this);
    1719             this._PathId = value.PathId;
    1720           }
    1721           else
    1722           {
    1723             this._PathId = default(Nullable<System.Guid>);
    1724           }
    1725           this.SendPropertyChanged("aspnet_Path");
    1726         }
    1727       }
    1728     }
    1729    
    1730     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_User_aspnet_PersonalizationPerUser", Storage="_aspnet_User", ThisKey="UserId", OtherKey="UserId", IsForeignKey=true)]
    1731     public aspnet_User aspnet_User
    1732     {
    1733       get
    1734       {
    1735         return this._aspnet_User.Entity;
    1736       }
    1737       set
    1738       {
    1739         aspnet_User previousValue = this._aspnet_User.Entity;
    1740         if (((previousValue != value)
    1741               || (this._aspnet_User.HasLoadedOrAssignedValue == false)))
    1742         {
    1743           this.SendPropertyChanging();
    1744           if ((previousValue != null))
    1745           {
    1746             this._aspnet_User.Entity = null;
    1747             previousValue.aspnet_PersonalizationPerUsers.Remove(this);
    1748           }
    1749           this._aspnet_User.Entity = value;
    1750           if ((value != null))
    1751           {
    1752             value.aspnet_PersonalizationPerUsers.Add(this);
    1753             this._UserId = value.UserId;
    1754           }
    1755           else
    1756           {
    1757             this._UserId = default(Nullable<System.Guid>);
    1758           }
    1759           this.SendPropertyChanged("aspnet_User");
    1760         }
    1761       }
    1762     }
    1763    
    1764     public event PropertyChangingEventHandler PropertyChanging;
    1765    
    1766     public event PropertyChangedEventHandler PropertyChanged;
    1767    
    1768     protected virtual void SendPropertyChanging()
    1769     {
    1770       if ((this.PropertyChanging != null))
    1771       {
    1772         this.PropertyChanging(this, emptyChangingEventArgs);
    1773       }
    1774     }
    1775    
    1776     protected virtual void SendPropertyChanged(String propertyName)
    1777     {
    1778       if ((this.PropertyChanged != null))
    1779       {
    1780         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1781       }
    1782     }
    1783   }
    1784  
    1785   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_Profile")]
    1786   public partial class aspnet_Profile : INotifyPropertyChanging, INotifyPropertyChanged
    1787   {
    1788    
    1789     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    1790    
    1791     private System.Guid _UserId;
    1792    
    1793     private string _PropertyNames;
    1794    
    1795     private string _PropertyValuesString;
    1796    
    1797     private System.Data.Linq.Binary _PropertyValuesBinary;
    1798    
    1799     private System.DateTime _LastUpdatedDate;
    1800    
    1801     private EntityRef<aspnet_User> _aspnet_User;
    1802    
    1803     #region Extensibility Method Definitions
    1804     partial void OnLoaded();
    1805     partial void OnValidate(System.Data.Linq.ChangeAction action);
    1806     partial void OnCreated();
    1807     partial void OnUserIdChanging(System.Guid value);
    1808     partial void OnUserIdChanged();
    1809     partial void OnPropertyNamesChanging(string value);
    1810     partial void OnPropertyNamesChanged();
    1811     partial void OnPropertyValuesStringChanging(string value);
    1812     partial void OnPropertyValuesStringChanged();
    1813     partial void OnPropertyValuesBinaryChanging(System.Data.Linq.Binary value);
    1814     partial void OnPropertyValuesBinaryChanged();
    1815     partial void OnLastUpdatedDateChanging(System.DateTime value);
    1816     partial void OnLastUpdatedDateChanged();
    1817     #endregion
    1818    
    1819     public aspnet_Profile()
    1820     {
    1821       this._aspnet_User = default(EntityRef<aspnet_User>);
    1822       OnCreated();
    1823     }
    1824    
    1825     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    1826     public System.Guid UserId
    1827     {
    1828       get
    1829       {
    1830         return this._UserId;
    1831       }
    1832       set
    1833       {
    1834         if ((this._UserId != value))
    1835         {
    1836           if (this._aspnet_User.HasLoadedOrAssignedValue)
    1837           {
    1838             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    1839           }
    1840           this.OnUserIdChanging(value);
    1841           this.SendPropertyChanging();
    1842           this._UserId = value;
    1843           this.SendPropertyChanged("UserId");
    1844           this.OnUserIdChanged();
    1845         }
    1846       }
    1847     }
    1848    
    1849     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyNames", DbType="NText NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
    1850     public string PropertyNames
    1851     {
    1852       get
    1853       {
    1854         return this._PropertyNames;
    1855       }
    1856       set
    1857       {
    1858         if ((this._PropertyNames != value))
    1859         {
    1860           this.OnPropertyNamesChanging(value);
    1861           this.SendPropertyChanging();
    1862           this._PropertyNames = value;
    1863           this.SendPropertyChanged("PropertyNames");
    1864           this.OnPropertyNamesChanged();
    1865         }
    1866       }
    1867     }
    1868    
    1869     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyValuesString", DbType="NText NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
    1870     public string PropertyValuesString
    1871     {
    1872       get
    1873       {
    1874         return this._PropertyValuesString;
    1875       }
    1876       set
    1877       {
    1878         if ((this._PropertyValuesString != value))
    1879         {
    1880           this.OnPropertyValuesStringChanging(value);
    1881           this.SendPropertyChanging();
    1882           this._PropertyValuesString = value;
    1883           this.SendPropertyChanged("PropertyValuesString");
    1884           this.OnPropertyValuesStringChanged();
    1885         }
    1886       }
    1887     }
    1888    
    1889     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PropertyValuesBinary", DbType="Image NOT NULL", CanBeNull=false, UpdateCheck=UpdateCheck.Never)]
    1890     public System.Data.Linq.Binary PropertyValuesBinary
    1891     {
    1892       get
    1893       {
    1894         return this._PropertyValuesBinary;
    1895       }
    1896       set
    1897       {
    1898         if ((this._PropertyValuesBinary != value))
    1899         {
    1900           this.OnPropertyValuesBinaryChanging(value);
    1901           this.SendPropertyChanging();
    1902           this._PropertyValuesBinary = value;
    1903           this.SendPropertyChanged("PropertyValuesBinary");
    1904           this.OnPropertyValuesBinaryChanged();
    1905         }
    1906       }
    1907     }
    1908    
    1909     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LastUpdatedDate", DbType="DateTime NOT NULL")]
    1910     public System.DateTime LastUpdatedDate
    1911     {
    1912       get
    1913       {
    1914         return this._LastUpdatedDate;
    1915       }
    1916       set
    1917       {
    1918         if ((this._LastUpdatedDate != value))
    1919         {
    1920           this.OnLastUpdatedDateChanging(value);
    1921           this.SendPropertyChanging();
    1922           this._LastUpdatedDate = value;
    1923           this.SendPropertyChanged("LastUpdatedDate");
    1924           this.OnLastUpdatedDateChanged();
    1925         }
    1926       }
    1927     }
    1928    
    1929     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_User_aspnet_Profile", Storage="_aspnet_User", ThisKey="UserId", OtherKey="UserId", IsForeignKey=true)]
    1930     public aspnet_User aspnet_User
    1931     {
    1932       get
    1933       {
    1934         return this._aspnet_User.Entity;
    1935       }
    1936       set
    1937       {
    1938         aspnet_User previousValue = this._aspnet_User.Entity;
    1939         if (((previousValue != value)
    1940               || (this._aspnet_User.HasLoadedOrAssignedValue == false)))
    1941         {
    1942           this.SendPropertyChanging();
    1943           if ((previousValue != null))
    1944           {
    1945             this._aspnet_User.Entity = null;
    1946             previousValue.aspnet_Profile = null;
    1947           }
    1948           this._aspnet_User.Entity = value;
    1949           if ((value != null))
    1950           {
    1951             value.aspnet_Profile = this;
    1952             this._UserId = value.UserId;
    1953           }
    1954           else
    1955           {
    1956             this._UserId = default(System.Guid);
    1957           }
    1958           this.SendPropertyChanged("aspnet_User");
    1959         }
    1960       }
    1961     }
    1962    
    1963     public event PropertyChangingEventHandler PropertyChanging;
    1964    
    1965     public event PropertyChangedEventHandler PropertyChanged;
    1966    
    1967     protected virtual void SendPropertyChanging()
    1968     {
    1969       if ((this.PropertyChanging != null))
    1970       {
    1971         this.PropertyChanging(this, emptyChangingEventArgs);
    1972       }
    1973     }
    1974    
    1975     protected virtual void SendPropertyChanged(String propertyName)
    1976     {
    1977       if ((this.PropertyChanged != null))
    1978       {
    1979         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    1980       }
    1981     }
    1982   }
    1983  
    1984970  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_Roles")]
    1985971  public partial class aspnet_Role : INotifyPropertyChanging, INotifyPropertyChanged
     
    22091195  }
    22101196 
    2211   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_SchemaVersions")]
    2212   public partial class aspnet_SchemaVersion : INotifyPropertyChanging, INotifyPropertyChanged
    2213   {
    2214    
    2215     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    2216    
    2217     private string _Feature;
    2218    
    2219     private string _CompatibleSchemaVersion;
    2220    
    2221     private bool _IsCurrentVersion;
    2222    
    2223     #region Extensibility Method Definitions
    2224     partial void OnLoaded();
    2225     partial void OnValidate(System.Data.Linq.ChangeAction action);
    2226     partial void OnCreated();
    2227     partial void OnFeatureChanging(string value);
    2228     partial void OnFeatureChanged();
    2229     partial void OnCompatibleSchemaVersionChanging(string value);
    2230     partial void OnCompatibleSchemaVersionChanged();
    2231     partial void OnIsCurrentVersionChanging(bool value);
    2232     partial void OnIsCurrentVersionChanged();
    2233     #endregion
    2234    
    2235     public aspnet_SchemaVersion()
    2236     {
    2237       OnCreated();
    2238     }
    2239    
    2240     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Feature", DbType="NVarChar(128) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
    2241     public string Feature
    2242     {
    2243       get
    2244       {
    2245         return this._Feature;
    2246       }
    2247       set
    2248       {
    2249         if ((this._Feature != value))
    2250         {
    2251           this.OnFeatureChanging(value);
    2252           this.SendPropertyChanging();
    2253           this._Feature = value;
    2254           this.SendPropertyChanged("Feature");
    2255           this.OnFeatureChanged();
    2256         }
    2257       }
    2258     }
    2259    
    2260     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompatibleSchemaVersion", DbType="NVarChar(128) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
    2261     public string CompatibleSchemaVersion
    2262     {
    2263       get
    2264       {
    2265         return this._CompatibleSchemaVersion;
    2266       }
    2267       set
    2268       {
    2269         if ((this._CompatibleSchemaVersion != value))
    2270         {
    2271           this.OnCompatibleSchemaVersionChanging(value);
    2272           this.SendPropertyChanging();
    2273           this._CompatibleSchemaVersion = value;
    2274           this.SendPropertyChanged("CompatibleSchemaVersion");
    2275           this.OnCompatibleSchemaVersionChanged();
    2276         }
    2277       }
    2278     }
    2279    
    2280     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsCurrentVersion", DbType="Bit NOT NULL")]
    2281     public bool IsCurrentVersion
    2282     {
    2283       get
    2284       {
    2285         return this._IsCurrentVersion;
    2286       }
    2287       set
    2288       {
    2289         if ((this._IsCurrentVersion != value))
    2290         {
    2291           this.OnIsCurrentVersionChanging(value);
    2292           this.SendPropertyChanging();
    2293           this._IsCurrentVersion = value;
    2294           this.SendPropertyChanged("IsCurrentVersion");
    2295           this.OnIsCurrentVersionChanged();
    2296         }
    2297       }
    2298     }
    2299    
    2300     public event PropertyChangingEventHandler PropertyChanging;
    2301    
    2302     public event PropertyChangedEventHandler PropertyChanged;
    2303    
    2304     protected virtual void SendPropertyChanging()
    2305     {
    2306       if ((this.PropertyChanging != null))
    2307       {
    2308         this.PropertyChanging(this, emptyChangingEventArgs);
    2309       }
    2310     }
    2311    
    2312     protected virtual void SendPropertyChanged(String propertyName)
    2313     {
    2314       if ((this.PropertyChanged != null))
    2315       {
    2316         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    2317       }
    2318     }
    2319   }
    2320  
    23211197  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_Users")]
    23221198  public partial class aspnet_User : INotifyPropertyChanging, INotifyPropertyChanged
     
    23401216   
    23411217    private EntityRef<aspnet_Membership> _aspnet_Membership;
    2342    
    2343     private EntitySet<aspnet_PersonalizationPerUser> _aspnet_PersonalizationPerUsers;
    2344    
    2345     private EntityRef<aspnet_Profile> _aspnet_Profile;
    23461218   
    23471219    private EntitySet<aspnet_UsersInRole> _aspnet_UsersInRoles;
     
    23721244    {
    23731245      this._aspnet_Membership = default(EntityRef<aspnet_Membership>);
    2374       this._aspnet_PersonalizationPerUsers = new EntitySet<aspnet_PersonalizationPerUser>(new Action<aspnet_PersonalizationPerUser>(this.attach_aspnet_PersonalizationPerUsers), new Action<aspnet_PersonalizationPerUser>(this.detach_aspnet_PersonalizationPerUsers));
    2375       this._aspnet_Profile = default(EntityRef<aspnet_Profile>);
    23761246      this._aspnet_UsersInRoles = new EntitySet<aspnet_UsersInRole>(new Action<aspnet_UsersInRole>(this.attach_aspnet_UsersInRoles), new Action<aspnet_UsersInRole>(this.detach_aspnet_UsersInRoles));
    23771247      this._aspnet_Application = default(EntityRef<aspnet_Application>);
     
    25521422    }
    25531423   
    2554     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_User_aspnet_PersonalizationPerUser", Storage="_aspnet_PersonalizationPerUsers", ThisKey="UserId", OtherKey="UserId")]
    2555     public EntitySet<aspnet_PersonalizationPerUser> aspnet_PersonalizationPerUsers
    2556     {
    2557       get
    2558       {
    2559         return this._aspnet_PersonalizationPerUsers;
    2560       }
    2561       set
    2562       {
    2563         this._aspnet_PersonalizationPerUsers.Assign(value);
    2564       }
    2565     }
    2566    
    2567     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_User_aspnet_Profile", Storage="_aspnet_Profile", ThisKey="UserId", OtherKey="UserId", IsUnique=true, IsForeignKey=false)]
    2568     public aspnet_Profile aspnet_Profile
    2569     {
    2570       get
    2571       {
    2572         return this._aspnet_Profile.Entity;
    2573       }
    2574       set
    2575       {
    2576         aspnet_Profile previousValue = this._aspnet_Profile.Entity;
    2577         if (((previousValue != value)
    2578               || (this._aspnet_Profile.HasLoadedOrAssignedValue == false)))
    2579         {
    2580           this.SendPropertyChanging();
    2581           if ((previousValue != null))
    2582           {
    2583             this._aspnet_Profile.Entity = null;
    2584             previousValue.aspnet_User = null;
    2585           }
    2586           this._aspnet_Profile.Entity = value;
    2587           if ((value != null))
    2588           {
    2589             value.aspnet_User = this;
    2590           }
    2591           this.SendPropertyChanged("aspnet_Profile");
    2592         }
    2593       }
    2594     }
    2595    
    25961424    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="aspnet_User_aspnet_UsersInRole", Storage="_aspnet_UsersInRoles", ThisKey="UserId", OtherKey="UserId")]
    25971425    public EntitySet<aspnet_UsersInRole> aspnet_UsersInRoles
     
    26591487        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    26601488      }
    2661     }
    2662    
    2663     private void attach_aspnet_PersonalizationPerUsers(aspnet_PersonalizationPerUser entity)
    2664     {
    2665       this.SendPropertyChanging();
    2666       entity.aspnet_User = this;
    2667     }
    2668    
    2669     private void detach_aspnet_PersonalizationPerUsers(aspnet_PersonalizationPerUser entity)
    2670     {
    2671       this.SendPropertyChanging();
    2672       entity.aspnet_User = null;
    26731489    }
    26741490   
     
    28531669    }
    28541670  }
    2855  
    2856   [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.aspnet_WebEvent_Events")]
    2857   public partial class aspnet_WebEvent_Event : INotifyPropertyChanging, INotifyPropertyChanged
    2858   {
    2859    
    2860     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    2861    
    2862     private string _EventId;
    2863    
    2864     private System.DateTime _EventTimeUtc;
    2865    
    2866     private System.DateTime _EventTime;
    2867    
    2868     private string _EventType;
    2869    
    2870     private decimal _EventSequence;
    2871    
    2872     private decimal _EventOccurrence;
    2873    
    2874     private int _EventCode;
    2875    
    2876     private int _EventDetailCode;
    2877    
    2878     private string _Message;
    2879    
    2880     private string _ApplicationPath;
    2881    
    2882     private string _ApplicationVirtualPath;
    2883    
    2884     private string _MachineName;
    2885    
    2886     private string _RequestUrl;
    2887    
    2888     private string _ExceptionType;
    2889    
    2890     private string _Details;
    2891    
    2892     #region Extensibility Method Definitions
    2893     partial void OnLoaded();
    2894     partial void OnValidate(System.Data.Linq.ChangeAction action);
    2895     partial void OnCreated();
    2896     partial void OnEventIdChanging(string value);
    2897     partial void OnEventIdChanged();
    2898     partial void OnEventTimeUtcChanging(System.DateTime value);
    2899     partial void OnEventTimeUtcChanged();
    2900     partial void OnEventTimeChanging(System.DateTime value);
    2901     partial void OnEventTimeChanged();
    2902     partial void OnEventTypeChanging(string value);
    2903     partial void OnEventTypeChanged();
    2904     partial void OnEventSequenceChanging(decimal value);
    2905     partial void OnEventSequenceChanged();
    2906     partial void OnEventOccurrenceChanging(decimal value);
    2907     partial void OnEventOccurrenceChanged();
    2908     partial void OnEventCodeChanging(int value);
    2909     partial void OnEventCodeChanged();
    2910     partial void OnEventDetailCodeChanging(int value);
    2911     partial void OnEventDetailCodeChanged();
    2912     partial void OnMessageChanging(string value);
    2913     partial void OnMessageChanged();
    2914     partial void OnApplicationPathChanging(string value);
    2915     partial void OnApplicationPathChanged();
    2916     partial void OnApplicationVirtualPathChanging(string value);
    2917     partial void OnApplicationVirtualPathChanged();
    2918     partial void OnMachineNameChanging(string value);
    2919     partial void OnMachineNameChanged();
    2920     partial void OnRequestUrlChanging(string value);
    2921     partial void OnRequestUrlChanged();
    2922     partial void OnExceptionTypeChanging(string value);
    2923     partial void OnExceptionTypeChanged();
    2924     partial void OnDetailsChanging(string value);
    2925     partial void OnDetailsChanged();
    2926     #endregion
    2927    
    2928     public aspnet_WebEvent_Event()
    2929     {
    2930       OnCreated();
    2931     }
    2932    
    2933     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventId", DbType="Char(32) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
    2934     public string EventId
    2935     {
    2936       get
    2937       {
    2938         return this._EventId;
    2939       }
    2940       set
    2941       {
    2942         if ((this._EventId != value))
    2943         {
    2944           this.OnEventIdChanging(value);
    2945           this.SendPropertyChanging();
    2946           this._EventId = value;
    2947           this.SendPropertyChanged("EventId");
    2948           this.OnEventIdChanged();
    2949         }
    2950       }
    2951     }
    2952    
    2953     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventTimeUtc", DbType="DateTime NOT NULL")]
    2954     public System.DateTime EventTimeUtc
    2955     {
    2956       get
    2957       {
    2958         return this._EventTimeUtc;
    2959       }
    2960       set
    2961       {
    2962         if ((this._EventTimeUtc != value))
    2963         {
    2964           this.OnEventTimeUtcChanging(value);
    2965           this.SendPropertyChanging();
    2966           this._EventTimeUtc = value;
    2967           this.SendPropertyChanged("EventTimeUtc");
    2968           this.OnEventTimeUtcChanged();
    2969         }
    2970       }
    2971     }
    2972    
    2973     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventTime", DbType="DateTime NOT NULL")]
    2974     public System.DateTime EventTime
    2975     {
    2976       get
    2977       {
    2978         return this._EventTime;
    2979       }
    2980       set
    2981       {
    2982         if ((this._EventTime != value))
    2983         {
    2984           this.OnEventTimeChanging(value);
    2985           this.SendPropertyChanging();
    2986           this._EventTime = value;
    2987           this.SendPropertyChanged("EventTime");
    2988           this.OnEventTimeChanged();
    2989         }
    2990       }
    2991     }
    2992    
    2993     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventType", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    2994     public string EventType
    2995     {
    2996       get
    2997       {
    2998         return this._EventType;
    2999       }
    3000       set
    3001       {
    3002         if ((this._EventType != value))
    3003         {
    3004           this.OnEventTypeChanging(value);
    3005           this.SendPropertyChanging();
    3006           this._EventType = value;
    3007           this.SendPropertyChanged("EventType");
    3008           this.OnEventTypeChanged();
    3009         }
    3010       }
    3011     }
    3012    
    3013     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventSequence", DbType="Decimal(19,0) NOT NULL")]
    3014     public decimal EventSequence
    3015     {
    3016       get
    3017       {
    3018         return this._EventSequence;
    3019       }
    3020       set
    3021       {
    3022         if ((this._EventSequence != value))
    3023         {
    3024           this.OnEventSequenceChanging(value);
    3025           this.SendPropertyChanging();
    3026           this._EventSequence = value;
    3027           this.SendPropertyChanged("EventSequence");
    3028           this.OnEventSequenceChanged();
    3029         }
    3030       }
    3031     }
    3032    
    3033     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventOccurrence", DbType="Decimal(19,0) NOT NULL")]
    3034     public decimal EventOccurrence
    3035     {
    3036       get
    3037       {
    3038         return this._EventOccurrence;
    3039       }
    3040       set
    3041       {
    3042         if ((this._EventOccurrence != value))
    3043         {
    3044           this.OnEventOccurrenceChanging(value);
    3045           this.SendPropertyChanging();
    3046           this._EventOccurrence = value;
    3047           this.SendPropertyChanged("EventOccurrence");
    3048           this.OnEventOccurrenceChanged();
    3049         }
    3050       }
    3051     }
    3052    
    3053     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventCode", DbType="Int NOT NULL")]
    3054     public int EventCode
    3055     {
    3056       get
    3057       {
    3058         return this._EventCode;
    3059       }
    3060       set
    3061       {
    3062         if ((this._EventCode != value))
    3063         {
    3064           this.OnEventCodeChanging(value);
    3065           this.SendPropertyChanging();
    3066           this._EventCode = value;
    3067           this.SendPropertyChanged("EventCode");
    3068           this.OnEventCodeChanged();
    3069         }
    3070       }
    3071     }
    3072    
    3073     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EventDetailCode", DbType="Int NOT NULL")]
    3074     public int EventDetailCode
    3075     {
    3076       get
    3077       {
    3078         return this._EventDetailCode;
    3079       }
    3080       set
    3081       {
    3082         if ((this._EventDetailCode != value))
    3083         {
    3084           this.OnEventDetailCodeChanging(value);
    3085           this.SendPropertyChanging();
    3086           this._EventDetailCode = value;
    3087           this.SendPropertyChanged("EventDetailCode");
    3088           this.OnEventDetailCodeChanged();
    3089         }
    3090       }
    3091     }
    3092    
    3093     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Message", DbType="NVarChar(1024)")]
    3094     public string Message
    3095     {
    3096       get
    3097       {
    3098         return this._Message;
    3099       }
    3100       set
    3101       {
    3102         if ((this._Message != value))
    3103         {
    3104           this.OnMessageChanging(value);
    3105           this.SendPropertyChanging();
    3106           this._Message = value;
    3107           this.SendPropertyChanged("Message");
    3108           this.OnMessageChanged();
    3109         }
    3110       }
    3111     }
    3112    
    3113     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApplicationPath", DbType="NVarChar(256)")]
    3114     public string ApplicationPath
    3115     {
    3116       get
    3117       {
    3118         return this._ApplicationPath;
    3119       }
    3120       set
    3121       {
    3122         if ((this._ApplicationPath != value))
    3123         {
    3124           this.OnApplicationPathChanging(value);
    3125           this.SendPropertyChanging();
    3126           this._ApplicationPath = value;
    3127           this.SendPropertyChanged("ApplicationPath");
    3128           this.OnApplicationPathChanged();
    3129         }
    3130       }
    3131     }
    3132    
    3133     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApplicationVirtualPath", DbType="NVarChar(256)")]
    3134     public string ApplicationVirtualPath
    3135     {
    3136       get
    3137       {
    3138         return this._ApplicationVirtualPath;
    3139       }
    3140       set
    3141       {
    3142         if ((this._ApplicationVirtualPath != value))
    3143         {
    3144           this.OnApplicationVirtualPathChanging(value);
    3145           this.SendPropertyChanging();
    3146           this._ApplicationVirtualPath = value;
    3147           this.SendPropertyChanged("ApplicationVirtualPath");
    3148           this.OnApplicationVirtualPathChanged();
    3149         }
    3150       }
    3151     }
    3152    
    3153     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MachineName", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3154     public string MachineName
    3155     {
    3156       get
    3157       {
    3158         return this._MachineName;
    3159       }
    3160       set
    3161       {
    3162         if ((this._MachineName != value))
    3163         {
    3164           this.OnMachineNameChanging(value);
    3165           this.SendPropertyChanging();
    3166           this._MachineName = value;
    3167           this.SendPropertyChanged("MachineName");
    3168           this.OnMachineNameChanged();
    3169         }
    3170       }
    3171     }
    3172    
    3173     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RequestUrl", DbType="NVarChar(1024)")]
    3174     public string RequestUrl
    3175     {
    3176       get
    3177       {
    3178         return this._RequestUrl;
    3179       }
    3180       set
    3181       {
    3182         if ((this._RequestUrl != value))
    3183         {
    3184           this.OnRequestUrlChanging(value);
    3185           this.SendPropertyChanging();
    3186           this._RequestUrl = value;
    3187           this.SendPropertyChanged("RequestUrl");
    3188           this.OnRequestUrlChanged();
    3189         }
    3190       }
    3191     }
    3192    
    3193     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExceptionType", DbType="NVarChar(256)")]
    3194     public string ExceptionType
    3195     {
    3196       get
    3197       {
    3198         return this._ExceptionType;
    3199       }
    3200       set
    3201       {
    3202         if ((this._ExceptionType != value))
    3203         {
    3204           this.OnExceptionTypeChanging(value);
    3205           this.SendPropertyChanging();
    3206           this._ExceptionType = value;
    3207           this.SendPropertyChanged("ExceptionType");
    3208           this.OnExceptionTypeChanged();
    3209         }
    3210       }
    3211     }
    3212    
    3213     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Details", DbType="NText", UpdateCheck=UpdateCheck.Never)]
    3214     public string Details
    3215     {
    3216       get
    3217       {
    3218         return this._Details;
    3219       }
    3220       set
    3221       {
    3222         if ((this._Details != value))
    3223         {
    3224           this.OnDetailsChanging(value);
    3225           this.SendPropertyChanging();
    3226           this._Details = value;
    3227           this.SendPropertyChanged("Details");
    3228           this.OnDetailsChanged();
    3229         }
    3230       }
    3231     }
    3232    
    3233     public event PropertyChangingEventHandler PropertyChanging;
    3234    
    3235     public event PropertyChangedEventHandler PropertyChanged;
    3236    
    3237     protected virtual void SendPropertyChanging()
    3238     {
    3239       if ((this.PropertyChanging != null))
    3240       {
    3241         this.PropertyChanging(this, emptyChangingEventArgs);
    3242       }
    3243     }
    3244    
    3245     protected virtual void SendPropertyChanged(String propertyName)
    3246     {
    3247       if ((this.PropertyChanged != null))
    3248       {
    3249         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    3250       }
    3251     }
    3252   }
    3253  
    3254   public partial class aspnet_UsersInRoles_AddUsersToRolesResult
    3255   {
    3256    
    3257     private string _Name;
    3258    
    3259     public aspnet_UsersInRoles_AddUsersToRolesResult()
    3260     {
    3261     }
    3262    
    3263     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3264     public string Name
    3265     {
    3266       get
    3267       {
    3268         return this._Name;
    3269       }
    3270       set
    3271       {
    3272         if ((this._Name != value))
    3273         {
    3274           this._Name = value;
    3275         }
    3276       }
    3277     }
    3278   }
    3279  
    3280   public partial class aspnet_UsersInRoles_RemoveUsersFromRolesResult
    3281   {
    3282    
    3283     private string _Column1;
    3284    
    3285     private string _Name;
    3286    
    3287     public aspnet_UsersInRoles_RemoveUsersFromRolesResult()
    3288     {
    3289     }
    3290    
    3291     [global::System.Data.Linq.Mapping.ColumnAttribute(Name="", Storage="_Column1", DbType="NVarChar(1) NOT NULL", CanBeNull=false)]
    3292     public string Column1
    3293     {
    3294       get
    3295       {
    3296         return this._Column1;
    3297       }
    3298       set
    3299       {
    3300         if ((this._Column1 != value))
    3301         {
    3302           this._Column1 = value;
    3303         }
    3304       }
    3305     }
    3306    
    3307     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3308     public string Name
    3309     {
    3310       get
    3311       {
    3312         return this._Name;
    3313       }
    3314       set
    3315       {
    3316         if ((this._Name != value))
    3317         {
    3318           this._Name = value;
    3319         }
    3320       }
    3321     }
    3322   }
    3323  
    3324   public partial class aspnet_UsersInRoles_GetUsersInRolesResult
    3325   {
    3326    
    3327     private string _UserName;
    3328    
    3329     public aspnet_UsersInRoles_GetUsersInRolesResult()
    3330     {
    3331     }
    3332    
    3333     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserName", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3334     public string UserName
    3335     {
    3336       get
    3337       {
    3338         return this._UserName;
    3339       }
    3340       set
    3341       {
    3342         if ((this._UserName != value))
    3343         {
    3344           this._UserName = value;
    3345         }
    3346       }
    3347     }
    3348   }
    3349  
    3350   public partial class aspnet_UsersInRoles_GetRolesForUserResult
    3351   {
    3352    
    3353     private string _RoleName;
    3354    
    3355     public aspnet_UsersInRoles_GetRolesForUserResult()
    3356     {
    3357     }
    3358    
    3359     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RoleName", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3360     public string RoleName
    3361     {
    3362       get
    3363       {
    3364         return this._RoleName;
    3365       }
    3366       set
    3367       {
    3368         if ((this._RoleName != value))
    3369         {
    3370           this._RoleName = value;
    3371         }
    3372       }
    3373     }
    3374   }
    3375  
    3376   public partial class aspnet_UsersInRoles_FindUsersInRoleResult
    3377   {
    3378    
    3379     private string _UserName;
    3380    
    3381     public aspnet_UsersInRoles_FindUsersInRoleResult()
    3382     {
    3383     }
    3384    
    3385     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserName", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3386     public string UserName
    3387     {
    3388       get
    3389       {
    3390         return this._UserName;
    3391       }
    3392       set
    3393       {
    3394         if ((this._UserName != value))
    3395         {
    3396           this._UserName = value;
    3397         }
    3398       }
    3399     }
    3400   }
    3401  
    3402   public partial class aspnet_Roles_GetAllRolesResult
    3403   {
    3404    
    3405     private string _RoleName;
    3406    
    3407     public aspnet_Roles_GetAllRolesResult()
    3408     {
    3409     }
    3410    
    3411     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RoleName", DbType="NVarChar(256) NOT NULL", CanBeNull=false)]
    3412     public string RoleName
    3413     {
    3414       get
    3415       {
    3416         return this._RoleName;
    3417       }
    3418       set
    3419       {
    3420         if ((this._RoleName != value))
    3421         {
    3422           this._RoleName = value;
    3423         }
    3424       }
    3425     }
    3426   }
    34271671}
    34281672#pragma warning restore 1591
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataTransfer/Application.cs

    r4979 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
     
    525using System.Runtime.Serialization;
    626
    7 namespace HeuristicLab.Services.Authentication.DataTransfer
    8 {
     27namespace HeuristicLab.Services.Authentication.DataTransfer {
     28
    929  [DataContract]
    10   public class Application : NamedAuthenticationItem {
    11    
    12    
    13    
    14     //[DataMember]
    15     //public string LoweredApplicationName { get; set; } // !!! REMOVE
     30  public class Application : AuthenticationItem {
     31  }
    1632
    17     [DataMember]
    18     public string Description { get; set; }
    19 
    20   }
    21     //[DataContract]
    22     //public class Application : NamedAuthItem {
    23     //    [DataMember]
    24     //    public Guid ApplicationId { get; set; }
    25     //    [DataMember]
    26     //    public string ApplicationName { get; set; }
    27     //    [DataMember]
    28     //    public string LoweredApplicationName { get; set; }
    29     //    [DataMember]
    30     //    public string Description { get; set; }
    31     //}
    3233}
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataTransfer/AuthenticationItem.cs

    r4979 r5257  
    1 using System.Runtime.Serialization;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System.Runtime.Serialization;
    222
    3 namespace HeuristicLab.Services.Authentication.DataTransfer
    4 {
     23namespace HeuristicLab.Services.Authentication.DataTransfer {
     24
    525  [DataContract]
    6   public abstract class AuthenticationItem{
    7 
     26  public abstract class AuthenticationItem {
    827
    928    [DataMember]
    1029    public System.Guid Id { get; set; }
     30
     31    [DataMember]
     32    public string Name { get; set; }
     33
     34    [DataMember]
     35    public string Description { get; set; }
    1136  }
    1237}
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataTransfer/HeuristicLab.Services.Authentication.DataTransfer.csproj

    r4979 r5257  
    4444    <Compile Include="Application.cs" />
    4545    <Compile Include="AuthenticationItem.cs" />
    46     <Compile Include="NamedAuthenticationItem.cs" />
    4746    <Compile Include="Role.cs" />
    4847    <Compile Include="User.cs" />
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataTransfer/Role.cs

    r4979 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
     
    525using System.Runtime.Serialization;
    626
    7 namespace HeuristicLab.Services.Authentication.DataTransfer
    8 {
     27namespace HeuristicLab.Services.Authentication.DataTransfer {
     28
    929  [DataContract]
    10   public class Role : NamedAuthenticationItem {
     30  public class Role : AuthenticationItem {
    1131
    12       public Role()
    13       {
    14           Name = "";
    15       }
     32    public Role() {
     33      ApplicationId = Guid.Empty;
     34    }
    1635
    1736    [DataMember]
    1837    public Guid ApplicationId { get; set; }
    19     //[DataMember]
    20     //public string LoweredRoleName { get; set; } // !!! REMOVE
    21     [DataMember]
    22     public string Description { get; set; }
    2338  }
    24     //[DataContract]
    25     //public class Role
    26     //{
    27     //    [DataMember]
    28     //    public Guid ApplicationId { get; set; }
    29     //    [DataMember]
    30     //    public Guid RoleId { get; set; }
    31     //    [DataMember]
    32     //    public string RoleName { get; set; }
    33         //[DataMember]
    34         //public string LoweredRoleName { get; set; }
    35     //    [DataMember]
    36     //    public string Description { get; set; }
    37     //}
    3839}
  • branches/UserManagement/HeuristicLab.Services.Authentication.DataTransfer/User.cs

    r4979 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
     
    525using System.Runtime.Serialization;
    626
    7 namespace HeuristicLab.Services.Authentication.DataTransfer
    8 {
     27namespace HeuristicLab.Services.Authentication.DataTransfer {
     28
    929  [DataContract]
    10   public class User : NamedAuthenticationItem {
     30  public class User : AuthenticationItem {
    1131
    12       public User()
    13       {
    14           Password = "";
    15           PasswordSalt = "";
    16           Name = "";
    17           CreateDate = DateTime.Now;
    18           LastActivityDate = DateTime.Now;
    19           LastLoginDate = DateTime.Now;
    20           LastLockoutDate = DateTime.Now;
    21           LastPasswordChangeDate = DateTime.Now;
    22       }
     32    public User() {
     33      Name = string.Empty;
     34      Email = string.Empty;
     35      ApplicationId = Guid.Empty;
     36      CreateDate = DateTime.Now;
     37      LastActivityDate = DateTime.Now;
     38      LastLoginDate = DateTime.Now;
     39      LastLockoutDate = DateTime.Now;
     40      LastPasswordChangeDate = DateTime.Now;
     41    }
    2342
    24     // Member of Membership
    2543    [DataMember]
    26     public Guid ApplicationId { get; set; } // Membership
     44    public Guid ApplicationId { get; set; }
     45
    2746    [DataMember]
    28     public string Password { get; set; } // Membership
    29     //[DataMember]
    30     //public string PasswordFormat { get; set; } // Membership
     47    public string Email { get; set; }
     48
    3149    [DataMember]
    32     public string PasswordSalt { get; set; } // Membership
    33    
    34     /// Change PW ?! welcher Hash in DB
     50    public bool IsApproved { get; set; }
    3551
     52    [DataMember]
     53    public bool IsLookedOut { get; set; }
    3654
    37     //[DataMember]
    38     //public string MobilePIN { get; set; } // Membership
    3955    [DataMember]
    40     public string Email { get; set; } // Membership
    41     //[DataMember]
    42     //public string LoweredEmail { get; set; } // Membership
    43     //[DataMember]
    44     //public string PasswordQuestion { get; set; } // Membership
    45     //[DataMember]
    46     //public string PasswordAnswer { get; set; } // Membership
     56    public DateTime CreateDate { get; set; }
     57
    4758    [DataMember]
    48     public bool IsApproved { get; set; } // Membership
     59    public DateTime LastLoginDate { get; set; }
     60
    4961    [DataMember]
    50     public bool IsLookedOut { get; set; } // Membership
     62    public DateTime LastPasswordChangeDate { get; set; }
     63
    5164    [DataMember]
    52     public DateTime CreateDate { get; set; } // Membership
     65    public DateTime LastLockoutDate { get; set; }
     66
    5367    [DataMember]
    54     public DateTime LastLoginDate { get; set; } // Membership
    55     [DataMember]
    56     public DateTime LastPasswordChangeDate { get; set; } // Memership
    57     [DataMember]
    58     public DateTime LastLockoutDate { get; set; } // Membership
    59     //[DataMember]
    60     //public int FailedPasswordAttemptCount { get; set; } // Membership
    61     //[DataMember]
    62     //public DateTime FailedPasswordAttemptWindowStart { get; set; } // Membership
    63     //[DataMember]
    64     //public int FailedPasswordAnswerAttemptCount { get; set; } // Membership
    65     //[DataMember]
    66     //public DateTime FailedPasswordAnswerAttemptWindowStart { get; set; } // Membership
    67     [DataMember]
    68     public string Comment { get; set; } // Membership
    69     // Members of User
    70     //[DataMember]
    71     //public string LoweredUserName { get; set; } // User
    72     //[DataMember]
    73     //public string MobileAlias { get; set; } // User
    74     //[DataMember]
    75     //public bool IsAnonymous { get; set; } // User
    76     [DataMember]
    77     public DateTime LastActivityDate { get; set; } // User
    78 
     68    public DateTime LastActivityDate { get; set; }
    7969  }
    80 
    81 
    82 
    83     //[DataContract]
    84     //public class User
    85     //{
    86 
    87     //    public User()
    88     //    {
    89     //        Membership = new Membership();
    90     //    }
    91 
    92     //    [DataMember]
    93     //    public Membership Membership { get; set; }
    94 
    95     //    [DataMember]
    96     //    public string Email
    97     //    {
    98     //        get { return Membership.Email; }
    99     //        set { Membership.Email = value; }
    100     //    }
    101     //    [DataMember]
    102     //    public string Password
    103     //    {
    104     //        get { return Membership.Password; }
    105     //        set { Membership.Password = value; }
    106     //    }
    107     //    [DataMember]
    108     //    public string PasswordQuestion
    109     //    {
    110     //        get { return Membership.PasswordQuestion; }
    111     //        set { this.Membership.PasswordQuestion = value; }
    112     //    }
    113     //    [DataMember]
    114     //    public Guid ApplicationId { get; set; }
    115     //    [DataMember]
    116     //    public Guid UserId { get; set; }
    117     //    [DataMember]
    118     //    public string UserName { get; set; }
    119     //    [DataMember]
    120     //    public string LoweredUserName { get; set; }
    121     //    [DataMember]
    122     //    public string MobileAlias { get; set; }
    123     //    [DataMember]
    124     //    public bool IsAnonymous { get; set; }
    125     //    [DataMember]
    126     //    public DateTime LastActivityDate { get; set; }
    127 
    128     //}
    12970}
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/AuthenticationClient.cs

    r4995 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
     
    626using System.ServiceModel.Security;
    727using System.ServiceModel;
    8 
    9 namespace HeuristicLab.Services.Authentication.ServiceClients
    10 {
    11     public class AuthenticationClient
    12     {
    13 
    14         private static AuthenticationClient instance;
    15         public static AuthenticationClient Instance
    16         {
    17             get
    18             {
    19                 if (instance == null) instance = new AuthenticationClient();
    20                 return instance;
    21             }
    22         }
    23 
    24         #region Properties
    25 
    26         private IEnumerable<User> users;
    27         public IEnumerable<User> Users
    28         {
    29             get { return users; }
    30         }
    31         private IEnumerable<Application> applications;
    32         public IEnumerable<Application> Applications
    33         {
    34             get { return applications; }
    35         }
    36 
    37         private IEnumerable<Role> roles;
    38         public IEnumerable<Role> Roles
    39         {
    40             get { return roles; }
    41         }
    42 
    43         #endregion
    44 
    45 
    46         private AuthenticationClient()
    47         {
    48             applications = GetApplications();
    49             users = CallService<User[]>(s => s.GetAllUsers()).OrderBy(x => x.Name);
    50             roles = CallService<Role[]>(s => s.GetAllRoles()).OrderBy(x => x.Name);
    51         }
    52 
    53 
    54 
    55         #region Store
    56 
    57         public bool Store(AuthenticationItem item)
    58         {
    59             try
    60             {
    61                 if (item.Id == Guid.Empty)
    62                 {
    63                     if (item is Role)
    64                         item.Id = CallService<Guid>(s => s.AddRole((Role)item));
    65                     else if (item is User)
    66                         item.Id = CallService<Guid>(s => s.AddUser((User)item));
    67                     else if (item is Application)
    68                         item.Id = CallService<Guid>(s => s.AddApplication((Application)item));
    69 
    70                 }
    71                 else
    72                 {
    73                     if (item is Role)
    74                         CallService(s => s.UpdateRole((Role)item));
    75                     else if (item is User)
    76                         CallService(s => s.UpdateUser((User)item));
    77                     else if (item is Application)
    78                         CallService(s => s.UpdateApplication((Application)item));
    79 
    80                 }
    81                 return true;
    82             }
    83             catch (Exception ex)
    84             {
    85                 //ErrorHandling.ShowErrorDialog("Store failed.", ex);
    86                 return false;
    87             }
    88         }
    89 
    90         #endregion
    91 
    92         #region Refresh
    93 
    94         public void Refresh()
    95         {
    96 
    97             var call = new Func<Exception>(delegate()
    98             {
    99 
    100                 Guid applicationId = Guid.Empty; // to be set!
    101 
    102                 try
    103                 {
    104                     users = CallService<User[]>(s => s.GetUsers(applicationId)).OrderBy(x => x.Name);
    105                     roles = CallService<Role[]>(s => s.GetRoles(applicationId)).OrderBy(x => x.Name);
    106                    
    107                     // ...
    108 
    109                     return null;
    110                 }
    111                 catch (Exception ex)
    112                 {
    113                     return ex;
    114                 }
    115             });
    116             call.BeginInvoke(delegate(IAsyncResult result)
    117             {
    118                 Exception ex = call.EndInvoke(result);
    119                 if (ex != null)
    120                 {
    121                     //ErrorHandling.ShowErrorDialog("Refresh failed.", ex);
    122                 }
    123 
    124             }, null);
    125         }
    126 
    127 
    128         #endregion
    129 
    130         private T CallService<T>(Func<IAuthenticationService, T> call)
    131         {
    132             AuthenticationServiceClient client = new AuthenticationServiceClient();
    133             client.ClientCredentials.UserName.UserName = "Alice";
    134             client.ClientCredentials.UserName.Password = "YouWillNeverKnow";
    135             client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
    136             //AuthenticationServiceClient client = ClientFactory.Create<AuthenticationClient, IAuthenticationService>();
    137             try
    138             {
    139                 return call(client);
    140             }
    141             finally
    142             {
    143                 try
    144                 {
    145                     client.Close();
    146                 }
    147                 catch (Exception)
    148                 {
    149                     client.Abort();
    150                 }
    151             }
    152         }
    153 
    154 
    155       #region Application methods
    156 
    157         public Application GetApplication(Guid applicationId)
    158         {
    159             try
    160             {
    161                 return CallService<Application>(s => s.GetApplication(applicationId));
    162             }
    163             catch (Exception ex)
    164             {
    165                 //ErrorHandling.ShowErrorDialog("Refresh problem data failed.", ex);
    166                 return null;
    167             }
    168         }
    169 
    170 
    171         public Guid AddApplication(Application application) {
    172           try {
    173             return CallService<Guid>(s => s.AddApplication(application));
     28using HeuristicLab.Core;
     29using HeuristicLab.Collections;
     30
     31namespace HeuristicLab.Services.Authentication {
     32  public class AuthenticationClient {
     33
     34    private static AuthenticationClient instance;
     35    public static AuthenticationClient Instance {
     36      get {
     37        if (instance == null) instance = new AuthenticationClient();
     38        return instance;
     39      }
     40    }
     41
     42    #region Properties
     43
     44    private ItemCollection<User> users;
     45    public ItemCollection<User> Users {
     46      get { return users; }
     47    }
     48    private ItemCollection<Application> applications;
     49    public ItemCollection<Application> Applications {
     50      get { return applications; }
     51    }
     52
     53    private ItemCollection<Role> roles;
     54    public ItemCollection<Role> Roles {
     55      get { return roles; }
     56    }
     57
     58    #endregion
     59
     60
     61    private AuthenticationClient() {
     62      applications = new ItemCollection<Application>();
     63      applications.ItemsRemoved += new CollectionItemsChangedEventHandler<Application>(applications_ItemsRemoved);
     64
     65      users = new ItemCollection<User>();
     66      users.ItemsRemoved += new CollectionItemsChangedEventHandler<User>(users_ItemsRemoved);
     67
     68      roles = new ItemCollection<Role>();
     69      roles.ItemsRemoved += new CollectionItemsChangedEventHandler<Role>(roles_ItemsRemoved);
     70    }
     71
     72
     73    #region Store
     74
     75    public bool Store(AuthenticationItem item) {
     76      try {
     77        if (item.Id == Guid.Empty) {
     78          if (item is Role)
     79            item.Id = CallService<Guid>(s => s.AddRole((Role)item));
     80          else if (item is User)
     81            item.Id = CallService<Guid>(s => s.AddUser((User)item));
     82          else if (item is Application)
     83            item.Id = CallService<Guid>(s => s.AddApplication((Application)item));
     84        } else {
     85          if (item is Role)
     86            CallService(s => s.UpdateRole((Role)item));
     87          else if (item is User)
     88            CallService(s => s.UpdateUser((User)item));
     89          else if (item is Application)
     90            CallService(s => s.UpdateApplication((Application)item));
     91        }
     92
     93        return true;
     94      }
     95      catch (Exception ex) {
     96        //ErrorHandling.ShowErrorDialog("Store failed.", ex);
     97        return false;
     98      }
     99    }
     100
     101    #endregion
     102
     103    #region Refresh
     104
     105    public void Refresh(Guid applicationId) {
     106      OnRefreshing();
     107
     108      users.Clear();
     109      roles.Clear();
     110      applications.Clear();
     111
     112      var call = new Func<Exception>(delegate() {
     113        try {
     114          applications.AddRange(CallService<Application[]>(s => s.GetApplications()).OrderBy(x => x.Name).ToArray());
     115          if (!applicationId.Equals(Guid.Empty)) {
     116            users.AddRange(CallService<User[]>(s => s.GetUsersForApplication(applicationId)).OrderBy(x => x.Name).ToArray());
     117            roles.AddRange(CallService<Role[]>(s => s.GetRolesForApplication(applicationId)).OrderBy(x => x.Name).ToArray());
    174118          }
    175           catch (Exception ex) {
    176             // Todo Errorhandling
    177             return Guid.Empty;
    178           }
    179         }
    180 
    181         public bool DeleteApplication(Guid id) {
    182           try {
    183             return CallService<bool>(s => s.DeleteApplication(id));
    184           }
    185           catch (Exception ex) {
    186             // Todo Errorhandling
    187             return false;
    188           }
    189         }
    190 
    191         public IEnumerable<Application> GetApplications() {
    192           try {
    193             return CallService<IEnumerable<Application>>(s => s.GetApplications());
    194           }
    195           catch (Exception ex) {
    196             // Todo Errorhandling
    197             return null;
    198 
    199           }
    200         }
    201 
    202 
    203         public bool UpdateApplication(Application application) {
    204           try {
    205             return CallService<bool>(s => s.UpdateApplication(application));
    206           }
    207           catch (Exception ex) {
    208             // Todo Errorhandling
    209             return false;
    210           }
    211         }
    212 
    213  
    214         #endregion
    215 
    216       #region Role Methods
    217 
    218       public Role GetRole (Guid Id) {
     119          return null;
     120        }
     121        catch (Exception ex) {
     122          return ex;
     123        }
     124      });
     125      call.BeginInvoke(delegate(IAsyncResult result) {
     126        Exception ex = call.EndInvoke(result);
     127        if (ex != null) {
     128          //ErrorHandling.ShowErrorDialog("Refresh failed.", ex);
     129        }
     130        OnRefreshed();
     131      }, null);
     132    }
     133
     134
     135    #endregion
     136
     137    #region Helpers
     138
     139    private void CallService(Action<IAuthenticationService> call) {
     140      AuthenticationServiceClient client = new AuthenticationServiceClient();
     141      client.ClientCredentials.UserName.UserName = "Alice";
     142      client.ClientCredentials.UserName.Password = "YouWillNeverKnow";
     143      client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
     144      //AuthenticationServiceClient client = ClientFactory.Create<AuthenticationClient, IAuthenticationService>();
     145      try {
     146        call(client);
     147      }
     148      finally {
    219149        try {
    220           return CallService<Role>(s => s.GetRole(Id));
    221         }
    222         catch (Exception ex) {
    223           // todo Errorhandling
    224           return null;
    225         }
    226       }
    227 
    228       public IEnumerable<Role> GetAllRoles() {
     150          client.Close();
     151        }
     152        catch (Exception) {
     153          client.Abort();
     154        }
     155      }
     156    }
     157
     158    private T CallService<T>(Func<IAuthenticationService, T> call) {
     159      AuthenticationServiceClient client = new AuthenticationServiceClient();
     160      client.ClientCredentials.UserName.UserName = "Alice";
     161      client.ClientCredentials.UserName.Password = "YouWillNeverKnow";
     162      client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
     163      //AuthenticationServiceClient client = ClientFactory.Create<AuthenticationClient, IAuthenticationService>();
     164      try {
     165        return call(client);
     166      }
     167      finally {
    229168        try {
    230           return CallService<IEnumerable<Role>>(s => s.GetAllRoles());
    231         }
    232         catch (Exception ex) {
    233           // Todo Errorhandling
    234           return null;
    235         }
    236       }
    237 
    238       public IEnumerable<Role> GetRoles(Guid applicationId) {
    239         try {
    240           return CallService<IEnumerable<Role>>(s => s.GetRoles(applicationId));
    241         }
    242         catch (Exception ex) {
    243           // Todo Errorhandling
    244           return null;
    245         }
    246       }
    247 
    248       public Guid AddRole(Role role) {
    249         try {
    250           return CallService<Guid>(s => s.AddRole(role));
    251         }
    252         catch (Exception ex) {
    253           // Todo Errorhandling
    254           return Guid.Empty;
    255 
    256         }
    257       }
    258 
    259       public bool UpdateRole(Role role) {
    260         try {
    261           return CallService<bool>(s => s.UpdateRole(role));
    262         }
    263         catch (Exception ex) {
    264           // Todo Errorhandling
    265           return false;
    266         }
    267       }
    268 
    269 
    270       public bool DeleteRole(Guid Id) {
    271         try {
    272           return CallService<bool>(s => s.DeleteRole(Id));
    273         }
    274         catch (Exception ex) {
    275           // Todo Errorhandling
    276           return false;
    277         }
    278       }
    279 
    280 
    281       #endregion
    282 
    283       #region User methods
    284 
    285       public User GetUser(Guid Id) {
    286         try {
    287           return CallService<User>(s => s.GetUser(Id));
    288         }
    289         catch (Exception ex) {
    290           // Todo Errorhandling
    291           return null;
    292         }
    293       }
    294 
    295       public IEnumerable<User> GetAllUsers() {
    296         try {
    297           return CallService<IEnumerable<User>>(s => s.GetAllUsers());
    298         }
    299         catch (Exception ex) {
    300           // Todo Errorhandling
    301           return null;
    302         }
    303       }
    304 
    305       public IEnumerable<User> GetUsers(Guid applicationId) {
    306         try {
    307           return CallService<IEnumerable<User>>(s => s.GetUsers(applicationId));
    308         }
    309         catch (Exception ex) {
    310           // Todo Errorhandling
    311           return null;
    312         }
    313       }
    314 
    315       public Guid AddUser(User user) {
    316         try {
    317           return CallService<Guid>(s => s.AddUser(user));
    318         }
    319         catch (Exception ex) {
    320           // Todo Errorhandling
    321           return Guid.Empty;
    322         }
    323       }
    324 
    325       public bool UpdateUser(User user) {
    326         try {
    327           return CallService<bool>(s => s.UpdateUser(user));
    328         }
    329         catch (Exception ex) {
    330           // Todo Errorhandling
    331           return false;
    332         }
    333       }
    334 
    335 
    336       public bool AddUserToRole(Guid roleId, Guid userId) {
    337         try {
    338           return CallService<bool>(s => s.AddUserToRole(roleId, userId);
    339         }
    340         catch (Exception ex) {
    341           // Todo Errorhandling
    342           return false;
    343         }
    344       }
    345 
    346 
    347       public IEnumerable<Guid> GetUsersInRole(Guid roleId) {
    348         try {
    349           return CallService<IEnumerable<Guid>>(s => s.GetUsersInRole(roleId));
    350         }
    351         catch (Exception ex) {
    352           // Todo Errorhandling
    353           return null;
    354         }
    355       }
    356 
    357 
    358       #endregion
    359 
    360 
    361 
    362 
    363       //public static void Main() {
    364         //    AuthenticationServiceClient auth = new AuthenticationServiceClient();
    365 
    366         //    auth.ClientCredentials.UserName.UserName = "Alice";
    367         //    auth.ClientCredentials.UserName.Password = "YouWillKnow";
    368         //    auth.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
    369 
    370         //    Application[] apps = auth.GetApplications();
    371         //    foreach (Application app in apps) {
    372         //        Console.WriteLine(app.Name);
    373         //    }
    374         //    Console.ReadLine();
    375         //}
    376     }
     169          client.Close();
     170        }
     171        catch (Exception) {
     172          client.Abort();
     173        }
     174      }
     175    }
     176
     177    #endregion
     178
     179    #region Application methods
     180
     181    public Application GetApplication(Guid applicationId) {
     182      try {
     183        return CallService<Application>(s => s.GetApplication(applicationId));
     184      }
     185      catch (Exception ex) {
     186        //ErrorHandling.ShowErrorDialog("Refresh problem data failed.", ex);
     187        return null;
     188      }
     189    }
     190
     191    public IEnumerable<Application> GetApplications() {
     192      try {
     193        return CallService<IEnumerable<Application>>(s => s.GetApplications());
     194      }
     195      catch (Exception ex) {
     196        // Todo Errorhandling
     197        return null;
     198
     199      }
     200    }
     201
     202
     203
     204    #endregion
     205
     206    #region Role Methods
     207
     208    public Role GetRole(Guid Id) {
     209      try {
     210        return CallService<Role>(s => s.GetRole(Id));
     211      }
     212      catch (Exception ex) {
     213        // todo Errorhandling
     214        return null;
     215      }
     216    }
     217
     218    public IEnumerable<Guid> GetRolesForUser(Guid userId) {
     219      try {
     220        return CallService<IEnumerable<Guid>>(s => s.GetRolesForUser(userId));
     221      }
     222      catch (Exception ex) {
     223        // Todo Errorhandling
     224        return null;
     225      }
     226    }
     227
     228
     229    #endregion
     230
     231    #region User methods
     232
     233    public User GetUser(Guid Id) {
     234      try {
     235        return CallService<User>(s => s.GetUser(Id));
     236      }
     237      catch (Exception ex) {
     238        // Todo Errorhandling
     239        return null;
     240      }
     241    }
     242
     243    public IEnumerable<User> GetUsers() {
     244      try {
     245        return CallService<IEnumerable<User>>(s => s.GetUsers());
     246      }
     247      catch (Exception ex) {
     248        // Todo Errorhandling
     249        return null;
     250      }
     251    }
     252
     253
     254    public bool IsUserInRole(Guid userId, Guid roleId) {
     255      try {
     256        return CallService<bool>(s => s.IsUserInRole(userId, roleId));
     257      }
     258      catch (Exception ex) {
     259        // Todo Errorhandling
     260        return false;
     261      }
     262    }
     263
     264
     265    public void AddUserToRole(Guid roleId, Guid userId) {
     266      try {
     267        CallService(s => s.AddUserToRole(roleId, userId));
     268      }
     269      catch (Exception ex) {
     270        // Todo Errorhandling
     271
     272      }
     273    }
     274
     275    public void RemoveUserFromRole(Guid roleId, Guid userId) {
     276      try {
     277        CallService(s => s.RemoveUserFromRole(roleId, userId));
     278      }
     279      catch (Exception ex) {
     280        // Todo Errorhandling
     281
     282      }
     283    }
     284
     285
     286    public IEnumerable<Guid> GetUsersInRole(Guid roleId) {
     287      try {
     288        return CallService<IEnumerable<Guid>>(s => s.GetUsersInRole(roleId));
     289      }
     290      catch (Exception ex) {
     291        // Todo Errorhandling
     292        return null;
     293      }
     294    }
     295
     296    public User ResetPassword(string applicationName, string userName, string password) {
     297      try {
     298        return CallService<User>(s => s.ResetPassword(applicationName, userName, password));
     299      }
     300      catch (Exception ex) {
     301        // Todo Errorhandling
     302        return null;
     303      }
     304    }
     305
     306    #endregion
     307
     308    #region Events
     309    public event EventHandler Refreshing;
     310    private void OnRefreshing() {
     311      EventHandler handler = Refreshing;
     312      if (handler != null) handler(this, EventArgs.Empty);
     313    }
     314    public event EventHandler Refreshed;
     315    private void OnRefreshed() {
     316      EventHandler handler = Refreshed;
     317      if (handler != null) handler(this, EventArgs.Empty);
     318    }
     319
     320
     321    void roles_ItemsRemoved(object sender, CollectionItemsChangedEventArgs<Role> e) {
     322      try {
     323        foreach (Role r in e.Items)
     324          CallService(s => s.DeleteRole(r.Id));
     325      }
     326      catch (Exception ex) {
     327        // ErrorHandling.ShowErrorDialog("Delete failed.", ex);
     328      }
     329    }
     330
     331    void users_ItemsRemoved(object sender, CollectionItemsChangedEventArgs<User> e) {
     332      try {
     333        foreach (User u in e.Items)
     334          CallService(s => s.DeleteUser(u.Id));
     335      }
     336      catch (Exception ex) {
     337        // ErrorHandling.ShowErrorDialog("Delete failed.", ex);
     338      }
     339    }
     340
     341    void applications_ItemsRemoved(object sender, CollectionItemsChangedEventArgs<Application> e) {
     342      try {
     343        foreach (Application a in e.Items)
     344          CallService(s => s.DeleteApplication(a.Id));
     345      }
     346      catch (Exception ex) {
     347        // ErrorHandling.ShowErrorDialog("Delete failed.", ex);
     348      }
     349    }
     350
     351    #endregion
     352  }
    377353}
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/ClientFactory.cs

    r4962 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/HeuristicLab.Services.Authentication.ServiceClient.csproj

    r4962 r5257  
    3535  </PropertyGroup>
    3636  <ItemGroup>
     37    <Reference Include="HeuristicLab.Collections-3.3">
     38      <HintPath>..\HeuristicLab.Collections-3.3.dll</HintPath>
     39    </Reference>
     40    <Reference Include="HeuristicLab.Common-3.3">
     41      <HintPath>..\HeuristicLab.Common-3.3.dll</HintPath>
     42    </Reference>
     43    <Reference Include="HeuristicLab.Common.Resources-3.3">
     44      <HintPath>..\HeuristicLab.Common.Resources-3.3.dll</HintPath>
     45    </Reference>
     46    <Reference Include="HeuristicLab.Core-3.3">
     47      <HintPath>..\HeuristicLab.Core-3.3.dll</HintPath>
     48    </Reference>
    3749    <Reference Include="System" />
    3850    <Reference Include="System.Core" />
    3951    <Reference Include="System.Data.Linq" />
     52    <Reference Include="System.Drawing" />
    4053    <Reference Include="System.Runtime.Serialization" />
    4154    <Reference Include="System.ServiceModel" />
     
    5063    <Compile Include="ClientFactory.cs" />
    5164    <Compile Include="ServiceClients\Application.cs" />
     65    <Compile Include="ServiceClients\AuthenticationItem.cs" />
    5266    <Compile Include="ServiceClients\AuthenticationServiceClient.cs" />
    5367    <Compile Include="Properties\AssemblyInfo.cs" />
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/ServiceClients/Application.cs

    r4962 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
    424using System.Text;
     25using HeuristicLab.Core;
     26using HeuristicLab.Common;
    527
    6 namespace HeuristicLab.Services.Authentication
    7 {
    8     public partial class Application
    9     {
     28namespace HeuristicLab.Services.Authentication {
     29  [Item("Application", "An application.")]
     30  public partial class Application {
     31    protected Application(Application original, Cloner cloner)
     32      : base(original, cloner) {
     33
    1034    }
     35
     36    public Application() {
     37    }
     38
     39    public override IDeepCloneable Clone(Cloner cloner) {
     40      return new Application(this, cloner);
     41    }
     42  }
    1143}
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/ServiceClients/AuthenticationServiceClient.cs

    r4979 r5257  
    1 //------------------------------------------------------------------------------
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21//------------------------------------------------------------------------------
    222// <auto-generated>
    3 //     Dieser Code wurde von einem Tool generiert.
    4 //     Laufzeitversion:4.0.30319.1
     23//     This code was generated by a tool.
     24//     Runtime Version:4.0.30319.1
    525//
    6 //     Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
    7 //     der Code erneut generiert wird.
     26//     Changes to this file may cause incorrect behavior and will be lost if
     27//     the code is regenerated.
    828// </auto-generated>
    929//------------------------------------------------------------------------------
    1030
    11 namespace HeuristicLab.Services.Authentication
    12 {
    13     using System.Runtime.Serialization;
    14    
    15    
    16     [System.Diagnostics.DebuggerStepThroughAttribute()]
    17     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    18     [System.Runtime.Serialization.DataContractAttribute(Name="AuthenticationItem", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
    19         "Transfer")]
    20     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.NamedAuthenticationItem))]
    21     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.Role))]
    22     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.Application))]
    23     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.User))]
    24     public partial class AuthenticationItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged
    25     {
    26        
    27         private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
    28        
    29         private System.Guid IdField;
    30        
    31         public System.Runtime.Serialization.ExtensionDataObject ExtensionData
    32         {
    33             get
    34             {
    35                 return this.extensionDataField;
    36             }
    37             set
    38             {
    39                 this.extensionDataField = value;
    40             }
    41         }
    42        
    43         [System.Runtime.Serialization.DataMemberAttribute()]
    44         public System.Guid Id
    45         {
    46             get
    47             {
    48                 return this.IdField;
    49             }
    50             set
    51             {
    52                 if ((this.IdField.Equals(value) != true))
    53                 {
    54                     this.IdField = value;
    55                     this.RaisePropertyChanged("Id");
    56                 }
    57             }
    58         }
    59        
    60         public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
    61        
    62         protected void RaisePropertyChanged(string propertyName)
    63         {
    64             System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
    65             if ((propertyChanged != null))
    66             {
    67                 propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
    68             }
    69         }
    70     }
    71    
    72     [System.Diagnostics.DebuggerStepThroughAttribute()]
    73     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    74     [System.Runtime.Serialization.DataContractAttribute(Name="NamedAuthenticationItem", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
    75         "Transfer")]
    76     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.Role))]
    77     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.Application))]
    78     [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.User))]
    79     public partial class NamedAuthenticationItem : HeuristicLab.Services.Authentication.AuthenticationItem
    80     {
    81        
    82         private string NameField;
    83        
    84         [System.Runtime.Serialization.DataMemberAttribute()]
    85         public string Name
    86         {
    87             get
    88             {
    89                 return this.NameField;
    90             }
    91             set
    92             {
    93                 if ((object.ReferenceEquals(this.NameField, value) != true))
    94                 {
    95                     this.NameField = value;
    96                     this.RaisePropertyChanged("Name");
    97                 }
    98             }
    99         }
    100     }
    101    
    102     [System.Diagnostics.DebuggerStepThroughAttribute()]
    103     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    104     [System.Runtime.Serialization.DataContractAttribute(Name="Role", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
    105         "Transfer")]
    106     public partial class Role : HeuristicLab.Services.Authentication.NamedAuthenticationItem
    107     {
    108        
    109         private System.Guid ApplicationIdField;
    110        
    111         private string DescriptionField;
    112        
    113         [System.Runtime.Serialization.DataMemberAttribute()]
    114         public System.Guid ApplicationId
    115         {
    116             get
    117             {
    118                 return this.ApplicationIdField;
    119             }
    120             set
    121             {
    122                 if ((this.ApplicationIdField.Equals(value) != true))
    123                 {
    124                     this.ApplicationIdField = value;
    125                     this.RaisePropertyChanged("ApplicationId");
    126                 }
    127             }
    128         }
    129        
    130         [System.Runtime.Serialization.DataMemberAttribute()]
    131         public string Description
    132         {
    133             get
    134             {
    135                 return this.DescriptionField;
    136             }
    137             set
    138             {
    139                 if ((object.ReferenceEquals(this.DescriptionField, value) != true))
    140                 {
    141                     this.DescriptionField = value;
    142                     this.RaisePropertyChanged("Description");
    143                 }
    144             }
    145         }
    146     }
    147    
    148     [System.Diagnostics.DebuggerStepThroughAttribute()]
    149     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    150     [System.Runtime.Serialization.DataContractAttribute(Name="Application", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
    151         "Transfer")]
    152     public partial class Application : HeuristicLab.Services.Authentication.NamedAuthenticationItem
    153     {
    154        
    155         private string DescriptionField;
    156        
    157         [System.Runtime.Serialization.DataMemberAttribute()]
    158         public string Description
    159         {
    160             get
    161             {
    162                 return this.DescriptionField;
    163             }
    164             set
    165             {
    166                 if ((object.ReferenceEquals(this.DescriptionField, value) != true))
    167                 {
    168                     this.DescriptionField = value;
    169                     this.RaisePropertyChanged("Description");
    170                 }
    171             }
    172         }
    173     }
    174    
    175     [System.Diagnostics.DebuggerStepThroughAttribute()]
    176     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    177     [System.Runtime.Serialization.DataContractAttribute(Name="User", Namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
    178         "Transfer")]
    179     public partial class User : HeuristicLab.Services.Authentication.NamedAuthenticationItem
    180     {
    181        
    182         private System.Guid ApplicationIdField;
    183        
    184         private string CommentField;
    185        
    186         private System.DateTime CreateDateField;
    187        
    188         private string EmailField;
    189        
    190         private bool IsApprovedField;
    191        
    192         private bool IsLookedOutField;
    193        
    194         private System.DateTime LastActivityDateField;
    195        
    196         private System.DateTime LastLockoutDateField;
    197        
    198         private System.DateTime LastLoginDateField;
    199        
    200         private System.DateTime LastPasswordChangeDateField;
    201        
    202         private string PasswordField;
    203        
    204         private string PasswordSaltField;
    205        
    206         [System.Runtime.Serialization.DataMemberAttribute()]
    207         public System.Guid ApplicationId
    208         {
    209             get
    210             {
    211                 return this.ApplicationIdField;
    212             }
    213             set
    214             {
    215                 if ((this.ApplicationIdField.Equals(value) != true))
    216                 {
    217                     this.ApplicationIdField = value;
    218                     this.RaisePropertyChanged("ApplicationId");
    219                 }
    220             }
    221         }
    222        
    223         [System.Runtime.Serialization.DataMemberAttribute()]
    224         public string Comment
    225         {
    226             get
    227             {
    228                 return this.CommentField;
    229             }
    230             set
    231             {
    232                 if ((object.ReferenceEquals(this.CommentField, value) != true))
    233                 {
    234                     this.CommentField = value;
    235                     this.RaisePropertyChanged("Comment");
    236                 }
    237             }
    238         }
    239        
    240         [System.Runtime.Serialization.DataMemberAttribute()]
    241         public System.DateTime CreateDate
    242         {
    243             get
    244             {
    245                 return this.CreateDateField;
    246             }
    247             set
    248             {
    249                 if ((this.CreateDateField.Equals(value) != true))
    250                 {
    251                     this.CreateDateField = value;
    252                     this.RaisePropertyChanged("CreateDate");
    253                 }
    254             }
    255         }
    256        
    257         [System.Runtime.Serialization.DataMemberAttribute()]
    258         public string Email
    259         {
    260             get
    261             {
    262                 return this.EmailField;
    263             }
    264             set
    265             {
    266                 if ((object.ReferenceEquals(this.EmailField, value) != true))
    267                 {
    268                     this.EmailField = value;
    269                     this.RaisePropertyChanged("Email");
    270                 }
    271             }
    272         }
    273        
    274         [System.Runtime.Serialization.DataMemberAttribute()]
    275         public bool IsApproved
    276         {
    277             get
    278             {
    279                 return this.IsApprovedField;
    280             }
    281             set
    282             {
    283                 if ((this.IsApprovedField.Equals(value) != true))
    284                 {
    285                     this.IsApprovedField = value;
    286                     this.RaisePropertyChanged("IsApproved");
    287                 }
    288             }
    289         }
    290        
    291         [System.Runtime.Serialization.DataMemberAttribute()]
    292         public bool IsLookedOut
    293         {
    294             get
    295             {
    296                 return this.IsLookedOutField;
    297             }
    298             set
    299             {
    300                 if ((this.IsLookedOutField.Equals(value) != true))
    301                 {
    302                     this.IsLookedOutField = value;
    303                     this.RaisePropertyChanged("IsLookedOut");
    304                 }
    305             }
    306         }
    307        
    308         [System.Runtime.Serialization.DataMemberAttribute()]
    309         public System.DateTime LastActivityDate
    310         {
    311             get
    312             {
    313                 return this.LastActivityDateField;
    314             }
    315             set
    316             {
    317                 if ((this.LastActivityDateField.Equals(value) != true))
    318                 {
    319                     this.LastActivityDateField = value;
    320                     this.RaisePropertyChanged("LastActivityDate");
    321                 }
    322             }
    323         }
    324        
    325         [System.Runtime.Serialization.DataMemberAttribute()]
    326         public System.DateTime LastLockoutDate
    327         {
    328             get
    329             {
    330                 return this.LastLockoutDateField;
    331             }
    332             set
    333             {
    334                 if ((this.LastLockoutDateField.Equals(value) != true))
    335                 {
    336                     this.LastLockoutDateField = value;
    337                     this.RaisePropertyChanged("LastLockoutDate");
    338                 }
    339             }
    340         }
    341        
    342         [System.Runtime.Serialization.DataMemberAttribute()]
    343         public System.DateTime LastLoginDate
    344         {
    345             get
    346             {
    347                 return this.LastLoginDateField;
    348             }
    349             set
    350             {
    351                 if ((this.LastLoginDateField.Equals(value) != true))
    352                 {
    353                     this.LastLoginDateField = value;
    354                     this.RaisePropertyChanged("LastLoginDate");
    355                 }
    356             }
    357         }
    358        
    359         [System.Runtime.Serialization.DataMemberAttribute()]
    360         public System.DateTime LastPasswordChangeDate
    361         {
    362             get
    363             {
    364                 return this.LastPasswordChangeDateField;
    365             }
    366             set
    367             {
    368                 if ((this.LastPasswordChangeDateField.Equals(value) != true))
    369                 {
    370                     this.LastPasswordChangeDateField = value;
    371                     this.RaisePropertyChanged("LastPasswordChangeDate");
    372                 }
    373             }
    374         }
    375        
    376         [System.Runtime.Serialization.DataMemberAttribute()]
    377         public string Password
    378         {
    379             get
    380             {
    381                 return this.PasswordField;
    382             }
    383             set
    384             {
    385                 if ((object.ReferenceEquals(this.PasswordField, value) != true))
    386                 {
    387                     this.PasswordField = value;
    388                     this.RaisePropertyChanged("Password");
    389                 }
    390             }
    391         }
    392        
    393         [System.Runtime.Serialization.DataMemberAttribute()]
    394         public string PasswordSalt
    395         {
    396             get
    397             {
    398                 return this.PasswordSaltField;
    399             }
    400             set
    401             {
    402                 if ((object.ReferenceEquals(this.PasswordSaltField, value) != true))
    403                 {
    404                     this.PasswordSaltField = value;
    405                     this.RaisePropertyChanged("PasswordSalt");
    406                 }
    407             }
    408         }
    409     }
    410    
    411     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    412     [System.ServiceModel.ServiceContractAttribute(ConfigurationName="HeuristicLab.Services.Authentication.IAuthenticationService")]
    413     public interface IAuthenticationService
    414     {
    415        
    416         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetUser", ReplyAction="http://tempuri.org/IAuthenticationService/GetUserResponse")]
    417         HeuristicLab.Services.Authentication.User GetUser(System.Guid id);
    418        
    419         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetAllUsers", ReplyAction="http://tempuri.org/IAuthenticationService/GetAllUsersResponse")]
    420         HeuristicLab.Services.Authentication.User[] GetAllUsers();
    421        
    422         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetUsers", ReplyAction="http://tempuri.org/IAuthenticationService/GetUsersResponse")]
    423         HeuristicLab.Services.Authentication.User[] GetUsers(System.Guid applicationId);
    424        
    425         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/AddUser", ReplyAction="http://tempuri.org/IAuthenticationService/AddUserResponse")]
    426         System.Guid AddUser(HeuristicLab.Services.Authentication.User user);
    427        
    428         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/DeleteUser", ReplyAction="http://tempuri.org/IAuthenticationService/DeleteUserResponse")]
    429         bool DeleteUser(System.Guid id);
    430        
    431         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/UpdateUser", ReplyAction="http://tempuri.org/IAuthenticationService/UpdateUserResponse")]
    432         bool UpdateUser(HeuristicLab.Services.Authentication.User user);
    433        
    434         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/AddUserToRole", ReplyAction="http://tempuri.org/IAuthenticationService/AddUserToRoleResponse")]
    435         bool AddUserToRole(System.Guid roleId, System.Guid userId);
    436        
    437         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetUsersInRole", ReplyAction="http://tempuri.org/IAuthenticationService/GetUsersInRoleResponse")]
    438         System.Guid[] GetUsersInRole(System.Guid roleId);
    439        
    440         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/RemoveUserFromRole", ReplyAction="http://tempuri.org/IAuthenticationService/RemoveUserFromRoleResponse")]
    441         bool RemoveUserFromRole(System.Guid roleId, System.Guid userId);
    442        
    443         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/IsUserInRole", ReplyAction="http://tempuri.org/IAuthenticationService/IsUserInRoleResponse")]
    444         bool IsUserInRole(System.Guid userId, System.Guid roleId);
    445        
    446         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetRole", ReplyAction="http://tempuri.org/IAuthenticationService/GetRoleResponse")]
    447         HeuristicLab.Services.Authentication.Role GetRole(System.Guid id);
    448        
    449         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetAllRoles", ReplyAction="http://tempuri.org/IAuthenticationService/GetAllRolesResponse")]
    450         HeuristicLab.Services.Authentication.Role[] GetAllRoles();
    451        
    452         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetRoles", ReplyAction="http://tempuri.org/IAuthenticationService/GetRolesResponse")]
    453         HeuristicLab.Services.Authentication.Role[] GetRoles(System.Guid applicationId);
    454        
    455         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/AddRole", ReplyAction="http://tempuri.org/IAuthenticationService/AddRoleResponse")]
    456         System.Guid AddRole(HeuristicLab.Services.Authentication.Role role);
    457        
    458         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/UpdateRole", ReplyAction="http://tempuri.org/IAuthenticationService/UpdateRoleResponse")]
    459         bool UpdateRole(HeuristicLab.Services.Authentication.Role role);
    460        
    461         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/DeleteRole", ReplyAction="http://tempuri.org/IAuthenticationService/DeleteRoleResponse")]
    462         bool DeleteRole(System.Guid id);
    463        
    464         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetRolesForUser", ReplyAction="http://tempuri.org/IAuthenticationService/GetRolesForUserResponse")]
    465         System.Guid[] GetRolesForUser(System.Guid userId);
    466        
    467         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetApplication", ReplyAction="http://tempuri.org/IAuthenticationService/GetApplicationResponse")]
    468         HeuristicLab.Services.Authentication.Application GetApplication(System.Guid id);
    469        
    470         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/AddApplication", ReplyAction="http://tempuri.org/IAuthenticationService/AddApplicationResponse")]
    471         System.Guid AddApplication(HeuristicLab.Services.Authentication.Application application);
    472        
    473         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/DeleteApplication", ReplyAction="http://tempuri.org/IAuthenticationService/DeleteApplicationResponse")]
    474         bool DeleteApplication(System.Guid id);
    475        
    476         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/GetApplications", ReplyAction="http://tempuri.org/IAuthenticationService/GetApplicationsResponse")]
    477         HeuristicLab.Services.Authentication.Application[] GetApplications();
    478        
    479         [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAuthenticationService/UpdateApplication", ReplyAction="http://tempuri.org/IAuthenticationService/UpdateApplicationResponse")]
    480         bool UpdateApplication(HeuristicLab.Services.Authentication.Application application);
    481     }
    482    
    483     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    484     public interface IAuthenticationServiceChannel : HeuristicLab.Services.Authentication.IAuthenticationService, System.ServiceModel.IClientChannel
    485     {
    486     }
    487    
    488     [System.Diagnostics.DebuggerStepThroughAttribute()]
    489     [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    490     public partial class AuthenticationServiceClient : System.ServiceModel.ClientBase<HeuristicLab.Services.Authentication.IAuthenticationService>, HeuristicLab.Services.Authentication.IAuthenticationService
    491     {
    492        
    493         public AuthenticationServiceClient()
    494         {
    495         }
    496        
    497         public AuthenticationServiceClient(string endpointConfigurationName) :
    498                 base(endpointConfigurationName)
    499         {
    500         }
    501        
    502         public AuthenticationServiceClient(string endpointConfigurationName, string remoteAddress) :
    503                 base(endpointConfigurationName, remoteAddress)
    504         {
    505         }
    506        
    507         public AuthenticationServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
    508                 base(endpointConfigurationName, remoteAddress)
    509         {
    510         }
    511        
    512         public AuthenticationServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
    513                 base(binding, remoteAddress)
    514         {
    515         }
    516        
    517         public HeuristicLab.Services.Authentication.User GetUser(System.Guid id)
    518         {
    519             return base.Channel.GetUser(id);
    520         }
    521        
    522         public HeuristicLab.Services.Authentication.User[] GetAllUsers()
    523         {
    524             return base.Channel.GetAllUsers();
    525         }
    526        
    527         public HeuristicLab.Services.Authentication.User[] GetUsers(System.Guid applicationId)
    528         {
    529             return base.Channel.GetUsers(applicationId);
    530         }
    531        
    532         public System.Guid AddUser(HeuristicLab.Services.Authentication.User user)
    533         {
    534             return base.Channel.AddUser(user);
    535         }
    536        
    537         public bool DeleteUser(System.Guid id)
    538         {
    539             return base.Channel.DeleteUser(id);
    540         }
    541        
    542         public bool UpdateUser(HeuristicLab.Services.Authentication.User user)
    543         {
    544             return base.Channel.UpdateUser(user);
    545         }
    546        
    547         public bool AddUserToRole(System.Guid roleId, System.Guid userId)
    548         {
    549             return base.Channel.AddUserToRole(roleId, userId);
    550         }
    551        
    552         public System.Guid[] GetUsersInRole(System.Guid roleId)
    553         {
    554             return base.Channel.GetUsersInRole(roleId);
    555         }
    556        
    557         public bool RemoveUserFromRole(System.Guid roleId, System.Guid userId)
    558         {
    559             return base.Channel.RemoveUserFromRole(roleId, userId);
    560         }
    561        
    562         public bool IsUserInRole(System.Guid userId, System.Guid roleId)
    563         {
    564             return base.Channel.IsUserInRole(userId, roleId);
    565         }
    566        
    567         public HeuristicLab.Services.Authentication.Role GetRole(System.Guid id)
    568         {
    569             return base.Channel.GetRole(id);
    570         }
    571        
    572         public HeuristicLab.Services.Authentication.Role[] GetAllRoles()
    573         {
    574             return base.Channel.GetAllRoles();
    575         }
    576        
    577         public HeuristicLab.Services.Authentication.Role[] GetRoles(System.Guid applicationId)
    578         {
    579             return base.Channel.GetRoles(applicationId);
    580         }
    581        
    582         public System.Guid AddRole(HeuristicLab.Services.Authentication.Role role)
    583         {
    584             return base.Channel.AddRole(role);
    585         }
    586        
    587         public bool UpdateRole(HeuristicLab.Services.Authentication.Role role)
    588         {
    589             return base.Channel.UpdateRole(role);
    590         }
    591        
    592         public bool DeleteRole(System.Guid id)
    593         {
    594             return base.Channel.DeleteRole(id);
    595         }
    596        
    597         public System.Guid[] GetRolesForUser(System.Guid userId)
    598         {
    599             return base.Channel.GetRolesForUser(userId);
    600         }
    601        
    602         public HeuristicLab.Services.Authentication.Application GetApplication(System.Guid id)
    603         {
    604             return base.Channel.GetApplication(id);
    605         }
    606        
    607         public System.Guid AddApplication(HeuristicLab.Services.Authentication.Application application)
    608         {
    609             return base.Channel.AddApplication(application);
    610         }
    611        
    612         public bool DeleteApplication(System.Guid id)
    613         {
    614             return base.Channel.DeleteApplication(id);
    615         }
    616        
    617         public HeuristicLab.Services.Authentication.Application[] GetApplications()
    618         {
    619             return base.Channel.GetApplications();
    620         }
    621        
    622         public bool UpdateApplication(HeuristicLab.Services.Authentication.Application application)
    623         {
    624             return base.Channel.UpdateApplication(application);
    625         }
    626     }
     31namespace HeuristicLab.Services.Authentication {
     32  using System.Runtime.Serialization;
     33
     34
     35  [System.Diagnostics.DebuggerStepThroughAttribute()]
     36  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     37  [System.Runtime.Serialization.DataContractAttribute(Name = "AuthenticationItem", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
     38      "Transfer")]
     39  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.Role))]
     40  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.Application))]
     41  [System.Runtime.Serialization.KnownTypeAttribute(typeof(HeuristicLab.Services.Authentication.User))]
     42  public partial class AuthenticationItem : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
     43
     44    private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
     45
     46    private string DescriptionField;
     47
     48    private System.Guid IdField;
     49
     50    private string NameField;
     51
     52    public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
     53      get {
     54        return this.extensionDataField;
     55      }
     56      set {
     57        this.extensionDataField = value;
     58      }
     59    }
     60
     61    [System.Runtime.Serialization.DataMemberAttribute()]
     62    public string Description {
     63      get {
     64        return this.DescriptionField;
     65      }
     66      set {
     67        if ((object.ReferenceEquals(this.DescriptionField, value) != true)) {
     68          this.DescriptionField = value;
     69          this.RaisePropertyChanged("Description");
     70        }
     71      }
     72    }
     73
     74    [System.Runtime.Serialization.DataMemberAttribute()]
     75    public System.Guid Id {
     76      get {
     77        return this.IdField;
     78      }
     79      set {
     80        if ((this.IdField.Equals(value) != true)) {
     81          this.IdField = value;
     82          this.RaisePropertyChanged("Id");
     83        }
     84      }
     85    }
     86
     87    [System.Runtime.Serialization.DataMemberAttribute()]
     88    public string Name {
     89      get {
     90        return this.NameField;
     91      }
     92      set {
     93        if ((object.ReferenceEquals(this.NameField, value) != true)) {
     94          this.NameField = value;
     95          this.RaisePropertyChanged("Name");
     96        }
     97      }
     98    }
     99
     100    public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
     101
     102
     103  }
     104
     105  [System.Diagnostics.DebuggerStepThroughAttribute()]
     106  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     107  [System.Runtime.Serialization.DataContractAttribute(Name = "Role", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
     108      "Transfer")]
     109  public partial class Role : HeuristicLab.Services.Authentication.AuthenticationItem {
     110
     111    private System.Guid ApplicationIdField;
     112
     113    [System.Runtime.Serialization.DataMemberAttribute()]
     114    public System.Guid ApplicationId {
     115      get {
     116        return this.ApplicationIdField;
     117      }
     118      set {
     119        if ((this.ApplicationIdField.Equals(value) != true)) {
     120          this.ApplicationIdField = value;
     121          this.RaisePropertyChanged("ApplicationId");
     122        }
     123      }
     124    }
     125  }
     126
     127  [System.Diagnostics.DebuggerStepThroughAttribute()]
     128  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     129  [System.Runtime.Serialization.DataContractAttribute(Name = "Application", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
     130      "Transfer")]
     131  public partial class Application : HeuristicLab.Services.Authentication.AuthenticationItem {
     132  }
     133
     134  [System.Diagnostics.DebuggerStepThroughAttribute()]
     135  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
     136  [System.Runtime.Serialization.DataContractAttribute(Name = "User", Namespace = "http://schemas.datacontract.org/2004/07/HeuristicLab.Services.Authentication.Data" +
     137      "Transfer")]
     138  public partial class User : HeuristicLab.Services.Authentication.AuthenticationItem {
     139
     140    private System.Guid ApplicationIdField;
     141
     142    private System.DateTime CreateDateField;
     143
     144    private string EmailField;
     145
     146    private bool IsApprovedField;
     147
     148    private bool IsLookedOutField;
     149
     150    private System.DateTime LastActivityDateField;
     151
     152    private System.DateTime LastLockoutDateField;
     153
     154    private System.DateTime LastLoginDateField;
     155
     156    private System.DateTime LastPasswordChangeDateField;
     157
     158    [System.Runtime.Serialization.DataMemberAttribute()]
     159    public System.Guid ApplicationId {
     160      get {
     161        return this.ApplicationIdField;
     162      }
     163      set {
     164        if ((this.ApplicationIdField.Equals(value) != true)) {
     165          this.ApplicationIdField = value;
     166          this.RaisePropertyChanged("ApplicationId");
     167        }
     168      }
     169    }
     170
     171    [System.Runtime.Serialization.DataMemberAttribute()]
     172    public System.DateTime CreateDate {
     173      get {
     174        return this.CreateDateField;
     175      }
     176      set {
     177        if ((this.CreateDateField.Equals(value) != true)) {
     178          this.CreateDateField = value;
     179          this.RaisePropertyChanged("CreateDate");
     180        }
     181      }
     182    }
     183
     184    [System.Runtime.Serialization.DataMemberAttribute()]
     185    public string Email {
     186      get {
     187        return this.EmailField;
     188      }
     189      set {
     190        if ((object.ReferenceEquals(this.EmailField, value) != true)) {
     191          this.EmailField = value;
     192          this.RaisePropertyChanged("Email");
     193        }
     194      }
     195    }
     196
     197    [System.Runtime.Serialization.DataMemberAttribute()]
     198    public bool IsApproved {
     199      get {
     200        return this.IsApprovedField;
     201      }
     202      set {
     203        if ((this.IsApprovedField.Equals(value) != true)) {
     204          this.IsApprovedField = value;
     205          this.RaisePropertyChanged("IsApproved");
     206        }
     207      }
     208    }
     209
     210    [System.Runtime.Serialization.DataMemberAttribute()]
     211    public bool IsLookedOut {
     212      get {
     213        return this.IsLookedOutField;
     214      }
     215      set {
     216        if ((this.IsLookedOutField.Equals(value) != true)) {
     217          this.IsLookedOutField = value;
     218          this.RaisePropertyChanged("IsLookedOut");
     219        }
     220      }
     221    }
     222
     223    [System.Runtime.Serialization.DataMemberAttribute()]
     224    public System.DateTime LastActivityDate {
     225      get {
     226        return this.LastActivityDateField;
     227      }
     228      set {
     229        if ((this.LastActivityDateField.Equals(value) != true)) {
     230          this.LastActivityDateField = value;
     231          this.RaisePropertyChanged("LastActivityDate");
     232        }
     233      }
     234    }
     235
     236    [System.Runtime.Serialization.DataMemberAttribute()]
     237    public System.DateTime LastLockoutDate {
     238      get {
     239        return this.LastLockoutDateField;
     240      }
     241      set {
     242        if ((this.LastLockoutDateField.Equals(value) != true)) {
     243          this.LastLockoutDateField = value;
     244          this.RaisePropertyChanged("LastLockoutDate");
     245        }
     246      }
     247    }
     248
     249    [System.Runtime.Serialization.DataMemberAttribute()]
     250    public System.DateTime LastLoginDate {
     251      get {
     252        return this.LastLoginDateField;
     253      }
     254      set {
     255        if ((this.LastLoginDateField.Equals(value) != true)) {
     256          this.LastLoginDateField = value;
     257          this.RaisePropertyChanged("LastLoginDate");
     258        }
     259      }
     260    }
     261
     262    [System.Runtime.Serialization.DataMemberAttribute()]
     263    public System.DateTime LastPasswordChangeDate {
     264      get {
     265        return this.LastPasswordChangeDateField;
     266      }
     267      set {
     268        if ((this.LastPasswordChangeDateField.Equals(value) != true)) {
     269          this.LastPasswordChangeDateField = value;
     270          this.RaisePropertyChanged("LastPasswordChangeDate");
     271        }
     272      }
     273    }
     274  }
     275
     276  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     277  [System.ServiceModel.ServiceContractAttribute(ConfigurationName = "HeuristicLab.Services.Authentication.IAuthenticationService")]
     278  public interface IAuthenticationService {
     279
     280    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetUser", ReplyAction = "http://tempuri.org/IAuthenticationService/GetUserResponse")]
     281    HeuristicLab.Services.Authentication.User GetUser(System.Guid id);
     282
     283    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetUsers", ReplyAction = "http://tempuri.org/IAuthenticationService/GetUsersResponse")]
     284    HeuristicLab.Services.Authentication.User[] GetUsers();
     285
     286    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetUsersForApplication", ReplyAction = "http://tempuri.org/IAuthenticationService/GetUsersForApplicationResponse")]
     287    HeuristicLab.Services.Authentication.User[] GetUsersForApplication(System.Guid applicationId);
     288
     289    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/AddUser", ReplyAction = "http://tempuri.org/IAuthenticationService/AddUserResponse")]
     290    System.Guid AddUser(HeuristicLab.Services.Authentication.User user);
     291
     292    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/DeleteUser", ReplyAction = "http://tempuri.org/IAuthenticationService/DeleteUserResponse")]
     293    void DeleteUser(System.Guid id);
     294
     295    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/UpdateUser", ReplyAction = "http://tempuri.org/IAuthenticationService/UpdateUserResponse")]
     296    void UpdateUser(HeuristicLab.Services.Authentication.User user);
     297
     298    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/AddUserToRole", ReplyAction = "http://tempuri.org/IAuthenticationService/AddUserToRoleResponse")]
     299    void AddUserToRole(System.Guid roleId, System.Guid userId);
     300
     301    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetUsersInRole", ReplyAction = "http://tempuri.org/IAuthenticationService/GetUsersInRoleResponse")]
     302    System.Guid[] GetUsersInRole(System.Guid roleId);
     303
     304    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/RemoveUserFromRole", ReplyAction = "http://tempuri.org/IAuthenticationService/RemoveUserFromRoleResponse")]
     305    void RemoveUserFromRole(System.Guid roleId, System.Guid userId);
     306
     307    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/IsUserInRole", ReplyAction = "http://tempuri.org/IAuthenticationService/IsUserInRoleResponse")]
     308    bool IsUserInRole(System.Guid userId, System.Guid roleId);
     309
     310    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/ResetPassword", ReplyAction = "http://tempuri.org/IAuthenticationService/ResetPasswordResponse")]
     311    HeuristicLab.Services.Authentication.User ResetPassword(string applicationName, string userName, string password);
     312
     313    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetRole", ReplyAction = "http://tempuri.org/IAuthenticationService/GetRoleResponse")]
     314    HeuristicLab.Services.Authentication.Role GetRole(System.Guid id);
     315
     316    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetRoles", ReplyAction = "http://tempuri.org/IAuthenticationService/GetRolesResponse")]
     317    HeuristicLab.Services.Authentication.Role[] GetRoles();
     318
     319    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetRolesForApplication", ReplyAction = "http://tempuri.org/IAuthenticationService/GetRolesForApplicationResponse")]
     320    HeuristicLab.Services.Authentication.Role[] GetRolesForApplication(System.Guid applicationId);
     321
     322    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/AddRole", ReplyAction = "http://tempuri.org/IAuthenticationService/AddRoleResponse")]
     323    System.Guid AddRole(HeuristicLab.Services.Authentication.Role role);
     324
     325    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/UpdateRole", ReplyAction = "http://tempuri.org/IAuthenticationService/UpdateRoleResponse")]
     326    void UpdateRole(HeuristicLab.Services.Authentication.Role role);
     327
     328    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/DeleteRole", ReplyAction = "http://tempuri.org/IAuthenticationService/DeleteRoleResponse")]
     329    void DeleteRole(System.Guid id);
     330
     331    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetRolesForUser", ReplyAction = "http://tempuri.org/IAuthenticationService/GetRolesForUserResponse")]
     332    System.Guid[] GetRolesForUser(System.Guid userId);
     333
     334    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetApplication", ReplyAction = "http://tempuri.org/IAuthenticationService/GetApplicationResponse")]
     335    HeuristicLab.Services.Authentication.Application GetApplication(System.Guid id);
     336
     337    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/AddApplication", ReplyAction = "http://tempuri.org/IAuthenticationService/AddApplicationResponse")]
     338    System.Guid AddApplication(HeuristicLab.Services.Authentication.Application application);
     339
     340    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/DeleteApplication", ReplyAction = "http://tempuri.org/IAuthenticationService/DeleteApplicationResponse")]
     341    void DeleteApplication(System.Guid id);
     342
     343    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/GetApplications", ReplyAction = "http://tempuri.org/IAuthenticationService/GetApplicationsResponse")]
     344    HeuristicLab.Services.Authentication.Application[] GetApplications();
     345
     346    [System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IAuthenticationService/UpdateApplication", ReplyAction = "http://tempuri.org/IAuthenticationService/UpdateApplicationResponse")]
     347    void UpdateApplication(HeuristicLab.Services.Authentication.Application application);
     348  }
     349
     350  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     351  public interface IAuthenticationServiceChannel : HeuristicLab.Services.Authentication.IAuthenticationService, System.ServiceModel.IClientChannel {
     352  }
     353
     354  [System.Diagnostics.DebuggerStepThroughAttribute()]
     355  [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
     356  public partial class AuthenticationServiceClient : System.ServiceModel.ClientBase<HeuristicLab.Services.Authentication.IAuthenticationService>, HeuristicLab.Services.Authentication.IAuthenticationService {
     357
     358    public AuthenticationServiceClient() {
     359    }
     360
     361    public AuthenticationServiceClient(string endpointConfigurationName) :
     362      base(endpointConfigurationName) {
     363    }
     364
     365    public AuthenticationServiceClient(string endpointConfigurationName, string remoteAddress) :
     366      base(endpointConfigurationName, remoteAddress) {
     367    }
     368
     369    public AuthenticationServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
     370      base(endpointConfigurationName, remoteAddress) {
     371    }
     372
     373    public AuthenticationServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
     374      base(binding, remoteAddress) {
     375    }
     376
     377    public HeuristicLab.Services.Authentication.User GetUser(System.Guid id) {
     378      return base.Channel.GetUser(id);
     379    }
     380
     381    public HeuristicLab.Services.Authentication.User[] GetUsers() {
     382      return base.Channel.GetUsers();
     383    }
     384
     385    public HeuristicLab.Services.Authentication.User[] GetUsersForApplication(System.Guid applicationId) {
     386      return base.Channel.GetUsersForApplication(applicationId);
     387    }
     388
     389    public System.Guid AddUser(HeuristicLab.Services.Authentication.User user) {
     390      return base.Channel.AddUser(user);
     391    }
     392
     393    public void DeleteUser(System.Guid id) {
     394      base.Channel.DeleteUser(id);
     395    }
     396
     397    public void UpdateUser(HeuristicLab.Services.Authentication.User user) {
     398      base.Channel.UpdateUser(user);
     399    }
     400
     401    public void AddUserToRole(System.Guid roleId, System.Guid userId) {
     402      base.Channel.AddUserToRole(roleId, userId);
     403    }
     404
     405    public System.Guid[] GetUsersInRole(System.Guid roleId) {
     406      return base.Channel.GetUsersInRole(roleId);
     407    }
     408
     409    public void RemoveUserFromRole(System.Guid roleId, System.Guid userId) {
     410      base.Channel.RemoveUserFromRole(roleId, userId);
     411    }
     412
     413    public bool IsUserInRole(System.Guid userId, System.Guid roleId) {
     414      return base.Channel.IsUserInRole(userId, roleId);
     415    }
     416
     417    public HeuristicLab.Services.Authentication.User ResetPassword(string applicationName, string userName, string password) {
     418      return base.Channel.ResetPassword(applicationName, userName, password);
     419    }
     420
     421    public HeuristicLab.Services.Authentication.Role GetRole(System.Guid id) {
     422      return base.Channel.GetRole(id);
     423    }
     424
     425    public HeuristicLab.Services.Authentication.Role[] GetRoles() {
     426      return base.Channel.GetRoles();
     427    }
     428
     429    public HeuristicLab.Services.Authentication.Role[] GetRolesForApplication(System.Guid applicationId) {
     430      return base.Channel.GetRolesForApplication(applicationId);
     431    }
     432
     433    public System.Guid AddRole(HeuristicLab.Services.Authentication.Role role) {
     434      return base.Channel.AddRole(role);
     435    }
     436
     437    public void UpdateRole(HeuristicLab.Services.Authentication.Role role) {
     438      base.Channel.UpdateRole(role);
     439    }
     440
     441    public void DeleteRole(System.Guid id) {
     442      base.Channel.DeleteRole(id);
     443    }
     444
     445    public System.Guid[] GetRolesForUser(System.Guid userId) {
     446      return base.Channel.GetRolesForUser(userId);
     447    }
     448
     449    public HeuristicLab.Services.Authentication.Application GetApplication(System.Guid id) {
     450      return base.Channel.GetApplication(id);
     451    }
     452
     453    public System.Guid AddApplication(HeuristicLab.Services.Authentication.Application application) {
     454      return base.Channel.AddApplication(application);
     455    }
     456
     457    public void DeleteApplication(System.Guid id) {
     458      base.Channel.DeleteApplication(id);
     459    }
     460
     461    public HeuristicLab.Services.Authentication.Application[] GetApplications() {
     462      return base.Channel.GetApplications();
     463    }
     464
     465    public void UpdateApplication(HeuristicLab.Services.Authentication.Application application) {
     466      base.Channel.UpdateApplication(application);
     467    }
     468  }
    627469}
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/ServiceClients/Role.cs

    r4962 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
    424using System.Text;
     25using HeuristicLab.Core;
     26using HeuristicLab.Common;
    527
    6 namespace HeuristicLab.Services.Authentication
    7 {
    8     public partial class Role
    9     {
     28namespace HeuristicLab.Services.Authentication {
     29  [Item("Role", "A role.")]
     30  public partial class Role {
     31    protected Role(Role original, Cloner cloner)
     32      : base(original, cloner) {
    1033
    11         //  IEnumerable<User> Users;
     34      ApplicationId = original.ApplicationId;
     35    }
    1236
     37    public Role() {
    1338    }
     39
     40    public override IDeepCloneable Clone(Cloner cloner) {
     41      return new Role(this, cloner);
     42    }
     43  }
    1444}
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/ServiceClients/User.cs

    r4962 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *                                                    d
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
    424using System.Text;
     25using HeuristicLab.Core;
     26using HeuristicLab.Common;
    527
    6 namespace HeuristicLab.Services.Authentication
    7 {
    8     public partial class User
    9     {
    10         // IEnumerable<Role> Roles
     28namespace HeuristicLab.Services.Authentication {
     29  [Item("User", "An user.")]
     30  public partial class User {
     31    protected User(User original, Cloner cloner)
     32      : base(original, cloner) {
    1133
     34      ApplicationId = original.ApplicationId;
     35      Email = original.Email;
     36      IsApproved = original.IsApproved;
     37      CreateDate = original.CreateDate;
     38      LastLoginDate = original.LastLoginDate;
     39      LastLockoutDate = original.LastLockoutDate;
    1240    }
     41
     42    public User() {
     43    }
     44
     45    public override IDeepCloneable Clone(Cloner cloner) {
     46      return new User(this, cloner);
     47    }
     48  }
    1349}
  • branches/UserManagement/HeuristicLab.Services.Authentication.ServiceClients/app.config

    r4979 r5257  
    2929                name="WSHttpBinding_IAuthenticationService">
    3030                <identity>
    31                     <certificate encodedValue="AwAAAAEAAAAUAAAAXL2k/dCMiB3+7a8y6zepgAUMPdcgAAAAAQAAAPIBAAAwggHuMIIBW6ADAgECAhB0J9LOt5NHpkN1DGclpr/0MAkGBSsOAwIdBQAwFDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTEwMDkyMTE4MDIwN1oXDTM5MTIzMTIzNTk1OVowFDESMBAGA1UEAxMJbG9jYWxob3N0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC73VKB25OrytpquyozHwo7d711Z4KEQEWHIigtJufMBUIzpQWXQrySaYrOdjZxuDJE8M7+kUi6FJny3o48Z8ZEEIKdoy4fJ+o5+rXKKNyg3rZxae1KJm4kQ3rIRu68b3cu6EYvFymORNo+gv8A03IbA2F7K1vaQbuRDAdbP8CT+QIDAQABo0kwRzBFBgNVHQEEPjA8gBC/lrDi96sGW7ZLNecSjhFEoRYwFDESMBAGA1UEAxMJbG9jYWxob3N0ghB0J9LOt5NHpkN1DGclpr/0MAkGBSsOAwIdBQADgYEAdls1HmJKAhEUZvCcg/ELZYpRHF3ds5mHsYrNNhEoUTrHYJzsXDqxLMyn9nbKQHv+kBH7tdgF61agYvy3666D7EHPMXyEk6OwCVxIvOyNaHywS0v7/fyU/394VpzFNmkuycaiemEZFhqxstKN6n4PzBqOJfUmIE9Ry/mnlp6T2Zo=" />
     31                    <certificate encodedValue="AwAAAAEAAAAUAAAAcW5qweN5KE/c7vDfiOgOVK9MmdUgAAAAAQAAAPIBAAAwggHuMIIBW6ADAgECAhBNYVKrw/XEtUXaCrJWdRQ3MAkGBSsOAwIdBQAwFDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTEwMTIxMDEyNDEzOFoXDTM5MTIzMTIzNTk1OVowFDESMBAGA1UEAxMJbG9jYWxob3N0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDcDRvCjtxUsUVe09hYQopTYzqvWEkVmwQhm3L/ZsYL5OXzfmGlT7/sL5SzWzlWrdDIMjW/H65bR50IxvgZ3B/N7x5jnvaV9wIH3000XYHMxKLoTzhths7OjU0uFHnQcI4mzhm6WralCag/wonW5T36pW8s2PixqUBecZZw0hBlbwIDAQABo0kwRzBFBgNVHQEEPjA8gBDjWp8J1q9QALL3wjJ/Q0j5oRYwFDESMBAGA1UEAxMJbG9jYWxob3N0ghBNYVKrw/XEtUXaCrJWdRQ3MAkGBSsOAwIdBQADgYEADaAsqAYk9qAuzyzkG6i2dCo1lOFuwKobPDzFJ7i3DvIeG8M9b+3JonFJiHItHEG2la82m+kCwV/uedicGdonSzG2WJwh3RqZq6CAlw8mz883npGD0w119XADxSZy+X4Tg6qrePVtWyH2MnKUMb7UTtwgRMhJrrdweP+ysdyue0o=" />
    3232                </identity>
    3333            </endpoint>
  • branches/UserManagement/HeuristicLab.Services.Authentication.TestClient2/HeuristicLab.Services.Authentication.TestClient2.csproj

    r4983 r5257  
    1414    <TargetFrameworkProfile>Client</TargetFrameworkProfile>
    1515    <FileAlignment>512</FileAlignment>
     16    <PublishUrl>publish\</PublishUrl>
     17    <Install>true</Install>
     18    <InstallFrom>Disk</InstallFrom>
     19    <UpdateEnabled>false</UpdateEnabled>
     20    <UpdateMode>Foreground</UpdateMode>
     21    <UpdateInterval>7</UpdateInterval>
     22    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
     23    <UpdatePeriodically>false</UpdatePeriodically>
     24    <UpdateRequired>false</UpdateRequired>
     25    <MapFileExtensions>true</MapFileExtensions>
     26    <ApplicationRevision>0</ApplicationRevision>
     27    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
     28    <IsWebBootstrapper>false</IsWebBootstrapper>
     29    <UseApplicationTrust>false</UseApplicationTrust>
     30    <BootstrapperEnabled>true</BootstrapperEnabled>
    1631  </PropertyGroup>
    1732  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
     
    3853  </PropertyGroup>
    3954  <ItemGroup>
     55    <Reference Include="HeuristicLab.Collections-3.3">
     56      <HintPath>..\HeuristicLab.Collections-3.3.dll</HintPath>
     57    </Reference>
     58    <Reference Include="HeuristicLab.Common-3.3">
     59      <HintPath>..\HeuristicLab.Common-3.3.dll</HintPath>
     60    </Reference>
     61    <Reference Include="HeuristicLab.Core-3.3">
     62      <HintPath>..\HeuristicLab.Core-3.3.dll</HintPath>
     63    </Reference>
    4064    <Reference Include="System" />
    4165    <Reference Include="System.Core" />
     
    5175  </ItemGroup>
    5276  <ItemGroup>
    53     <Compile Include="Form1.cs">
    54       <SubType>Form</SubType>
    55     </Compile>
    56     <Compile Include="Form1.Designer.cs">
    57       <DependentUpon>Form1.cs</DependentUpon>
    58     </Compile>
    5977    <Compile Include="Program.cs" />
    6078    <Compile Include="Properties\AssemblyInfo.cs" />
     79    <Compile Include="Properties\Resources.Designer.cs">
     80      <AutoGen>True</AutoGen>
     81      <DesignTime>True</DesignTime>
     82      <DependentUpon>Resources.resx</DependentUpon>
     83    </Compile>
    6184    <Compile Include="UserManagement.cs">
    6285      <SubType>Form</SubType>
     
    81104  </ItemGroup>
    82105  <ItemGroup>
    83     <EmbeddedResource Include="Form1.resx">
    84       <DependentUpon>Form1.cs</DependentUpon>
     106    <EmbeddedResource Include="Properties\Resources.resx">
     107      <Generator>ResXFileCodeGenerator</Generator>
     108      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
    85109    </EmbeddedResource>
    86110    <EmbeddedResource Include="UserManagement.resx">
     
    98122    <WCFMetadata Include="Service References\" />
    99123  </ItemGroup>
     124  <ItemGroup>
     125    <BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
     126      <Visible>False</Visible>
     127      <ProductName>Microsoft .NET Framework 4 Client Profile %28x86 and x64%29</ProductName>
     128      <Install>true</Install>
     129    </BootstrapperPackage>
     130    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
     131      <Visible>False</Visible>
     132      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
     133      <Install>false</Install>
     134    </BootstrapperPackage>
     135    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
     136      <Visible>False</Visible>
     137      <ProductName>.NET Framework 3.5 SP1</ProductName>
     138      <Install>false</Install>
     139    </BootstrapperPackage>
     140    <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
     141      <Visible>False</Visible>
     142      <ProductName>Windows Installer 3.1</ProductName>
     143      <Install>true</Install>
     144    </BootstrapperPackage>
     145  </ItemGroup>
    100146  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    101147  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
  • branches/UserManagement/HeuristicLab.Services.Authentication.TestClient2/Program.cs

    r4983 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.Linq;
     
    626using HeuristicLab.Services.Authentication;
    727using System.ServiceModel.Security;
    8 using HeuristicLab.Services.Authentication.ServiceClients;
     28
    929
    1030namespace HeuristicLab.Services.Authentication.TestClient2
     
    1434        static void Main(string[] args)
    1535        {
    16             IEnumerable<Application> apps = AuthenticationClient.Instance.Applications;
    17 
    18             foreach (Application app in apps)
    19             {
    20                 Console.WriteLine(app.Name);
    21             }
    22             Console.WriteLine("          Users         ");
    23             IEnumerable<User> users = AuthenticationClient.Instance.Users;
    24 
    25             foreach (User u in users) {
    26               Console.WriteLine(u.Name);
    27             }
    28             Console.ReadLine(); 
    29 
    30             System.Windows.Forms.Application.Run(new Form1());
     36            UserManagement formUserMgmt = new UserManagement();
     37            System.Windows.Forms.Application.Run(formUserMgmt);
    3138        }
    3239    }
  • branches/UserManagement/HeuristicLab.Services.Authentication.TestClient2/UserManagement.Designer.cs

    r4789 r5257  
    1 namespace HeuristicLab.Services.Authentication.TestClient2
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21namespace HeuristicLab.Services.Authentication
    222{
    323    partial class UserManagement
     
    2949        private void InitializeComponent()
    3050        {
    31             this.components = new System.ComponentModel.Container();
    32             System.Windows.Forms.Label descriptionLabel;
    33             System.Windows.Forms.Label loweredApplicationNameLabel;
    34             System.Windows.Forms.Label nameLabel;
    35             System.Windows.Forms.Label commentLabel;
    36             System.Windows.Forms.Label emailLabel;
    37             System.Windows.Forms.Label isApprovedLabel;
    38             System.Windows.Forms.Label nameLabel1;
    39             System.Windows.Forms.Label passwordLabel;
    40             System.Windows.Forms.Label passwordSaltLabel;
    41             System.Windows.Forms.Label nameLabel2;
    42             System.Windows.Forms.Label loweredRoleNameLabel;
    43             System.Windows.Forms.Label descriptionLabel1;
    44             this.tcMain = new System.Windows.Forms.TabControl();
    45             this.tpApplications = new System.Windows.Forms.TabPage();
    46             this.btnUpdateApplication = new System.Windows.Forms.Button();
    47             this.btnDeleteApplication = new System.Windows.Forms.Button();
    48             this.descriptionTextBox = new System.Windows.Forms.TextBox();
    49             this.bsApplications = new System.Windows.Forms.BindingSource(this.components);
    50             this.loweredApplicationNameTextBox = new System.Windows.Forms.TextBox();
    51             this.nameTextBox = new System.Windows.Forms.TextBox();
    52             this.btnNewApplication = new System.Windows.Forms.Button();
    53             this.dgvApplications = new System.Windows.Forms.DataGridView();
    54             this.nameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    55             this.loweredApplicationNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    56             this.descriptionDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    57             this.tpUsers = new System.Windows.Forms.TabPage();
    58             this.tcUser = new System.Windows.Forms.TabControl();
    59             this.tabPage1 = new System.Windows.Forms.TabPage();
    60             this.passwordTextBox = new System.Windows.Forms.TextBox();
    61             this.bsUsers = new System.Windows.Forms.BindingSource(this.components);
    62             this.isApprovedCheckBox = new System.Windows.Forms.CheckBox();
    63             this.btnUpdateUser = new System.Windows.Forms.Button();
    64             this.commentTextBox = new System.Windows.Forms.TextBox();
    65             this.btnDeleteUser = new System.Windows.Forms.Button();
    66             this.btnNewUser = new System.Windows.Forms.Button();
    67             this.emailTextBox = new System.Windows.Forms.TextBox();
    68             this.passwordSaltTextBox = new System.Windows.Forms.TextBox();
    69             this.nameTextBox1 = new System.Windows.Forms.TextBox();
    70             this.tabPage2 = new System.Windows.Forms.TabPage();
    71             this.btnAddRoleToUser = new System.Windows.Forms.Button();
    72             this.btnRemoveRoleFromUser = new System.Windows.Forms.Button();
    73             this.dgvUserRolesAll = new System.Windows.Forms.DataGridView();
    74             this.nameDataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    75             this.bsRoles = new System.Windows.Forms.BindingSource(this.components);
    76             this.dgvUserRoles = new System.Windows.Forms.DataGridView();
    77             this.nameDataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    78             this.bsUserRoles = new System.Windows.Forms.BindingSource(this.components);
    79             this.dgvUsers = new System.Windows.Forms.DataGridView();
    80             this.nameDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    81             this.emailDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    82             this.commentDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    83             this.lastLoginDateDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    84             this.lastPasswordChangeDateDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    85             this.lastLockoutDateDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    86             this.lastActivityDateDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    87             this.isLookedOutDataGridViewCheckBoxColumn = new System.Windows.Forms.DataGridViewCheckBoxColumn();
    88             this.isApprovedDataGridViewCheckBoxColumn = new System.Windows.Forms.DataGridViewCheckBoxColumn();
    89             this.tpRoles = new System.Windows.Forms.TabPage();
    90             this.tcRole = new System.Windows.Forms.TabControl();
    91             this.tabPage3 = new System.Windows.Forms.TabPage();
    92             this.btnNewRole = new System.Windows.Forms.Button();
    93             this.btnUpdateRole = new System.Windows.Forms.Button();
    94             this.descriptionTextBox1 = new System.Windows.Forms.TextBox();
    95             this.btnDeleteRole = new System.Windows.Forms.Button();
    96             this.loweredRoleNameTextBox = new System.Windows.Forms.TextBox();
    97             this.nameTextBox2 = new System.Windows.Forms.TextBox();
    98             this.tabPage4 = new System.Windows.Forms.TabPage();
    99             this.btnAddUserToRole = new System.Windows.Forms.Button();
    100             this.btnRemoveUserFromRole = new System.Windows.Forms.Button();
    101             this.dgvRoleUsersAll = new System.Windows.Forms.DataGridView();
    102             this.nameDataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    103             this.dgvRoleUsers = new System.Windows.Forms.DataGridView();
    104             this.nameDataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    105             this.bsRoleUsers = new System.Windows.Forms.BindingSource(this.components);
    106             this.dgvRoles = new System.Windows.Forms.DataGridView();
    107             this.nameDataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    108             this.loweredRoleNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
    109             this.descriptionDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
    110             this.cbxApplications = new System.Windows.Forms.ComboBox();
    111             this.bsApplicationsCombo = new System.Windows.Forms.BindingSource(this.components);
    112             descriptionLabel = new System.Windows.Forms.Label();
    113             loweredApplicationNameLabel = new System.Windows.Forms.Label();
    114             nameLabel = new System.Windows.Forms.Label();
    115             commentLabel = new System.Windows.Forms.Label();
    116             emailLabel = new System.Windows.Forms.Label();
    117             isApprovedLabel = new System.Windows.Forms.Label();
    118             nameLabel1 = new System.Windows.Forms.Label();
    119             passwordLabel = new System.Windows.Forms.Label();
    120             passwordSaltLabel = new System.Windows.Forms.Label();
    121             nameLabel2 = new System.Windows.Forms.Label();
    122             loweredRoleNameLabel = new System.Windows.Forms.Label();
    123             descriptionLabel1 = new System.Windows.Forms.Label();
    124             this.tcMain.SuspendLayout();
    125             this.tpApplications.SuspendLayout();
    126             ((System.ComponentModel.ISupportInitialize)(this.bsApplications)).BeginInit();
    127             ((System.ComponentModel.ISupportInitialize)(this.dgvApplications)).BeginInit();
    128             this.tpUsers.SuspendLayout();
    129             this.tcUser.SuspendLayout();
    130             this.tabPage1.SuspendLayout();
    131             ((System.ComponentModel.ISupportInitialize)(this.bsUsers)).BeginInit();
    132             this.tabPage2.SuspendLayout();
    133             ((System.ComponentModel.ISupportInitialize)(this.dgvUserRolesAll)).BeginInit();
    134             ((System.ComponentModel.ISupportInitialize)(this.bsRoles)).BeginInit();
    135             ((System.ComponentModel.ISupportInitialize)(this.dgvUserRoles)).BeginInit();
    136             ((System.ComponentModel.ISupportInitialize)(this.bsUserRoles)).BeginInit();
    137             ((System.ComponentModel.ISupportInitialize)(this.dgvUsers)).BeginInit();
    138             this.tpRoles.SuspendLayout();
    139             this.tcRole.SuspendLayout();
    140             this.tabPage3.SuspendLayout();
    141             this.tabPage4.SuspendLayout();
    142             ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsersAll)).BeginInit();
    143             ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsers)).BeginInit();
    144             ((System.ComponentModel.ISupportInitialize)(this.bsRoleUsers)).BeginInit();
    145             ((System.ComponentModel.ISupportInitialize)(this.dgvRoles)).BeginInit();
    146             ((System.ComponentModel.ISupportInitialize)(this.bsApplicationsCombo)).BeginInit();
    147             this.SuspendLayout();
    148             //
    149             // descriptionLabel
    150             //
    151             descriptionLabel.AutoSize = true;
    152             descriptionLabel.Location = new System.Drawing.Point(510, 237);
    153             descriptionLabel.Name = "descriptionLabel";
    154             descriptionLabel.Size = new System.Drawing.Size(63, 13);
    155             descriptionLabel.TabIndex = 2;
    156             descriptionLabel.Text = "Description:";
    157             //
    158             // loweredApplicationNameLabel
    159             //
    160             loweredApplicationNameLabel.AutoSize = true;
    161             loweredApplicationNameLabel.Location = new System.Drawing.Point(333, 237);
    162             loweredApplicationNameLabel.Name = "loweredApplicationNameLabel";
    163             loweredApplicationNameLabel.Size = new System.Drawing.Size(137, 13);
    164             loweredApplicationNameLabel.TabIndex = 6;
    165             loweredApplicationNameLabel.Text = "Lowered Application Name:";
    166             //
    167             // nameLabel
    168             //
    169             nameLabel.AutoSize = true;
    170             nameLabel.Location = new System.Drawing.Point(160, 237);
    171             nameLabel.Name = "nameLabel";
    172             nameLabel.Size = new System.Drawing.Size(38, 13);
    173             nameLabel.TabIndex = 8;
    174             nameLabel.Text = "Name:";
    175             //
    176             // commentLabel
    177             //
    178             commentLabel.AutoSize = true;
    179             commentLabel.Location = new System.Drawing.Point(28, 16);
    180             commentLabel.Name = "commentLabel";
    181             commentLabel.Size = new System.Drawing.Size(54, 13);
    182             commentLabel.TabIndex = 1;
    183             commentLabel.Text = "Comment:";
    184             //
    185             // emailLabel
    186             //
    187             emailLabel.AutoSize = true;
    188             emailLabel.Location = new System.Drawing.Point(28, 64);
    189             emailLabel.Name = "emailLabel";
    190             emailLabel.Size = new System.Drawing.Size(35, 13);
    191             emailLabel.TabIndex = 3;
    192             emailLabel.Text = "Email:";
    193             //
    194             // isApprovedLabel
    195             //
    196             isApprovedLabel.AutoSize = true;
    197             isApprovedLabel.Location = new System.Drawing.Point(28, 113);
    198             isApprovedLabel.Name = "isApprovedLabel";
    199             isApprovedLabel.Size = new System.Drawing.Size(67, 13);
    200             isApprovedLabel.TabIndex = 5;
    201             isApprovedLabel.Text = "Is Approved:";
    202             //
    203             // nameLabel1
    204             //
    205             nameLabel1.AutoSize = true;
    206             nameLabel1.Location = new System.Drawing.Point(201, 16);
    207             nameLabel1.Name = "nameLabel1";
    208             nameLabel1.Size = new System.Drawing.Size(38, 13);
    209             nameLabel1.TabIndex = 9;
    210             nameLabel1.Text = "Name:";
    211             //
    212             // passwordLabel
    213             //
    214             passwordLabel.AutoSize = true;
    215             passwordLabel.Location = new System.Drawing.Point(201, 64);
    216             passwordLabel.Name = "passwordLabel";
    217             passwordLabel.Size = new System.Drawing.Size(56, 13);
    218             passwordLabel.TabIndex = 11;
    219             passwordLabel.Text = "Password:";
    220             //
    221             // passwordSaltLabel
    222             //
    223             passwordSaltLabel.AutoSize = true;
    224             passwordSaltLabel.Location = new System.Drawing.Point(335, 64);
    225             passwordSaltLabel.Name = "passwordSaltLabel";
    226             passwordSaltLabel.Size = new System.Drawing.Size(77, 13);
    227             passwordSaltLabel.TabIndex = 13;
    228             passwordSaltLabel.Text = "Password Salt:";
    229             //
    230             // nameLabel2
    231             //
    232             nameLabel2.AutoSize = true;
    233             nameLabel2.Location = new System.Drawing.Point(41, 26);
    234             nameLabel2.Name = "nameLabel2";
    235             nameLabel2.Size = new System.Drawing.Size(38, 13);
    236             nameLabel2.TabIndex = 1;
    237             nameLabel2.Text = "Name:";
    238             //
    239             // loweredRoleNameLabel
    240             //
    241             loweredRoleNameLabel.AutoSize = true;
    242             loweredRoleNameLabel.Location = new System.Drawing.Point(41, 78);
    243             loweredRoleNameLabel.Name = "loweredRoleNameLabel";
    244             loweredRoleNameLabel.Size = new System.Drawing.Size(107, 13);
    245             loweredRoleNameLabel.TabIndex = 3;
    246             loweredRoleNameLabel.Text = "Lowered Role Name:";
    247             //
    248             // descriptionLabel1
    249             //
    250             descriptionLabel1.AutoSize = true;
    251             descriptionLabel1.Location = new System.Drawing.Point(41, 128);
    252             descriptionLabel1.Name = "descriptionLabel1";
    253             descriptionLabel1.Size = new System.Drawing.Size(63, 13);
    254             descriptionLabel1.TabIndex = 5;
    255             descriptionLabel1.Text = "Description:";
    256             //
    257             // tcMain
    258             //
    259             this.tcMain.Controls.Add(this.tpApplications);
    260             this.tcMain.Controls.Add(this.tpUsers);
    261             this.tcMain.Controls.Add(this.tpRoles);
    262             this.tcMain.Location = new System.Drawing.Point(31, 63);
    263             this.tcMain.Name = "tcMain";
    264             this.tcMain.SelectedIndex = 0;
    265             this.tcMain.Size = new System.Drawing.Size(829, 556);
    266             this.tcMain.TabIndex = 0;
    267             //
    268             // tpApplications
    269             //
    270             this.tpApplications.AutoScroll = true;
    271             this.tpApplications.Controls.Add(this.btnUpdateApplication);
    272             this.tpApplications.Controls.Add(this.btnDeleteApplication);
    273             this.tpApplications.Controls.Add(descriptionLabel);
    274             this.tpApplications.Controls.Add(this.descriptionTextBox);
    275             this.tpApplications.Controls.Add(loweredApplicationNameLabel);
    276             this.tpApplications.Controls.Add(this.loweredApplicationNameTextBox);
    277             this.tpApplications.Controls.Add(nameLabel);
    278             this.tpApplications.Controls.Add(this.nameTextBox);
    279             this.tpApplications.Controls.Add(this.btnNewApplication);
    280             this.tpApplications.Controls.Add(this.dgvApplications);
    281             this.tpApplications.Location = new System.Drawing.Point(4, 22);
    282             this.tpApplications.Name = "tpApplications";
    283             this.tpApplications.Padding = new System.Windows.Forms.Padding(3);
    284             this.tpApplications.Size = new System.Drawing.Size(821, 530);
    285             this.tpApplications.TabIndex = 0;
    286             this.tpApplications.Text = "Applications";
    287             this.tpApplications.UseVisualStyleBackColor = true;
    288             //
    289             // btnUpdateApplication
    290             //
    291             this.btnUpdateApplication.Location = new System.Drawing.Point(23, 309);
    292             this.btnUpdateApplication.Name = "btnUpdateApplication";
    293             this.btnUpdateApplication.Size = new System.Drawing.Size(75, 23);
    294             this.btnUpdateApplication.TabIndex = 11;
    295             this.btnUpdateApplication.Text = "update";
    296             this.btnUpdateApplication.UseVisualStyleBackColor = true;
    297             this.btnUpdateApplication.Click += new System.EventHandler(this.btnUpdateApplication_Click);
    298             //
    299             // btnDeleteApplication
    300             //
    301             this.btnDeleteApplication.Location = new System.Drawing.Point(23, 280);
    302             this.btnDeleteApplication.Name = "btnDeleteApplication";
    303             this.btnDeleteApplication.Size = new System.Drawing.Size(75, 23);
    304             this.btnDeleteApplication.TabIndex = 10;
    305             this.btnDeleteApplication.Text = "delete";
    306             this.btnDeleteApplication.UseVisualStyleBackColor = true;
    307             this.btnDeleteApplication.Click += new System.EventHandler(this.btnDeleteApplication_Click);
    308             //
    309             // descriptionTextBox
    310             //
    311             this.descriptionTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsApplications, "Description", true));
    312             this.descriptionTextBox.Location = new System.Drawing.Point(513, 253);
    313             this.descriptionTextBox.Name = "descriptionTextBox";
    314             this.descriptionTextBox.Size = new System.Drawing.Size(152, 20);
    315             this.descriptionTextBox.TabIndex = 3;
    316             //
    317             // bsApplications
    318             //
    319             this.bsApplications.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Application);
    320             //
    321             // loweredApplicationNameTextBox
    322             //
    323             this.loweredApplicationNameTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsApplications, "LoweredApplicationName", true));
    324             this.loweredApplicationNameTextBox.Location = new System.Drawing.Point(336, 253);
    325             this.loweredApplicationNameTextBox.Name = "loweredApplicationNameTextBox";
    326             this.loweredApplicationNameTextBox.Size = new System.Drawing.Size(152, 20);
    327             this.loweredApplicationNameTextBox.TabIndex = 7;
    328             //
    329             // nameTextBox
    330             //
    331             this.nameTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsApplications, "Name", true));
    332             this.nameTextBox.Location = new System.Drawing.Point(163, 253);
    333             this.nameTextBox.Name = "nameTextBox";
    334             this.nameTextBox.Size = new System.Drawing.Size(152, 20);
    335             this.nameTextBox.TabIndex = 9;
    336             //
    337             // btnNewApplication
    338             //
    339             this.btnNewApplication.Location = new System.Drawing.Point(23, 251);
    340             this.btnNewApplication.Name = "btnNewApplication";
    341             this.btnNewApplication.Size = new System.Drawing.Size(75, 23);
    342             this.btnNewApplication.TabIndex = 1;
    343             this.btnNewApplication.Text = "new";
    344             this.btnNewApplication.UseVisualStyleBackColor = true;
    345             this.btnNewApplication.Click += new System.EventHandler(this.btnNewApplication_Click);
    346             //
    347             // dgvApplications
    348             //
    349             this.dgvApplications.AllowUserToAddRows = false;
    350             this.dgvApplications.AllowUserToDeleteRows = false;
    351             this.dgvApplications.AutoGenerateColumns = false;
    352             this.dgvApplications.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    353             this.dgvApplications.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     51          this.components = new System.ComponentModel.Container();
     52          System.Windows.Forms.Label descriptionLabel;
     53          System.Windows.Forms.Label nameLabel;
     54          System.Windows.Forms.Label commentLabel;
     55          System.Windows.Forms.Label emailLabel;
     56          System.Windows.Forms.Label nameLabel1;
     57          System.Windows.Forms.Label nameLabel2;
     58          System.Windows.Forms.Label descriptionLabel1;
     59          System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(UserManagement));
     60          System.Windows.Forms.Label label2;
     61          this.tcMain = new System.Windows.Forms.TabControl();
     62          this.tpApplications = new System.Windows.Forms.TabPage();
     63          this.dgvApplications = new System.Windows.Forms.DataGridView();
     64          this.idDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
     65          this.colName = new System.Windows.Forms.DataGridViewTextBoxColumn();
     66          this.colDescription = new System.Windows.Forms.DataGridViewTextBoxColumn();
     67          this.applicationBindingSource = new System.Windows.Forms.BindingSource(this.components);
     68          this.panel1 = new System.Windows.Forms.Panel();
     69          this.tbApplicationDescription = new System.Windows.Forms.TextBox();
     70          this.tbApplicationName = new System.Windows.Forms.TextBox();
     71          this.statusStrip1 = new System.Windows.Forms.StatusStrip();
     72          this.tssApplicationStatus = new System.Windows.Forms.ToolStripStatusLabel();
     73          this.toolStrip1 = new System.Windows.Forms.ToolStrip();
     74          this.tspNewApplication = new System.Windows.Forms.ToolStripButton();
     75          this.tspDeleteApplication = new System.Windows.Forms.ToolStripButton();
     76          this.tspSaveApplication = new System.Windows.Forms.ToolStripButton();
     77          this.tpUsers = new System.Windows.Forms.TabPage();
     78          this.dgvUsers = new System.Windows.Forms.DataGridView();
     79          this.idDataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     80          this.nameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
     81          this.emailDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
     82          this.descriptionDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
     83          this.userBindingSource2 = new System.Windows.Forms.BindingSource(this.components);
     84          this.toolStrip2 = new System.Windows.Forms.ToolStrip();
     85          this.tsbNewUser = new System.Windows.Forms.ToolStripButton();
     86          this.tsbDeleteUser = new System.Windows.Forms.ToolStripButton();
     87          this.tsbSaveUser = new System.Windows.Forms.ToolStripButton();
     88          this.panel3 = new System.Windows.Forms.Panel();
     89          this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
     90          this.panel4 = new System.Windows.Forms.Panel();
     91          this.dgvUserRoles = new System.Windows.Forms.DataGridView();
     92          this.nameDataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     93          this.roleBindingSource1 = new System.Windows.Forms.BindingSource(this.components);
     94          this.toolStrip3 = new System.Windows.Forms.ToolStrip();
     95          this.tsbRemoveRoleFromUser = new System.Windows.Forms.ToolStripButton();
     96          this.panel5 = new System.Windows.Forms.Panel();
     97          this.dgvUserRolesAll = new System.Windows.Forms.DataGridView();
     98          this.nameDataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     99          this.roleBindingSource2 = new System.Windows.Forms.BindingSource(this.components);
     100          this.toolStrip4 = new System.Windows.Forms.ToolStrip();
     101          this.tsbAddRoleToUser = new System.Windows.Forms.ToolStripButton();
     102          this.label3 = new System.Windows.Forms.Label();
     103          this.tbUserComment = new System.Windows.Forms.TextBox();
     104          this.tbUserName = new System.Windows.Forms.TextBox();
     105          this.tbUserEmail = new System.Windows.Forms.TextBox();
     106          this.statusStrip2 = new System.Windows.Forms.StatusStrip();
     107          this.tssStatusUser = new System.Windows.Forms.ToolStripStatusLabel();
     108          this.tpRoles = new System.Windows.Forms.TabPage();
     109          this.dgvRoles = new System.Windows.Forms.DataGridView();
     110          this.idDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     111          this.nameDataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     112          this.descriptionDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     113          this.roleBindingSource = new System.Windows.Forms.BindingSource(this.components);
     114          this.panel6 = new System.Windows.Forms.Panel();
     115          this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
     116          this.panel8 = new System.Windows.Forms.Panel();
     117          this.dgvRoleUsersAll = new System.Windows.Forms.DataGridView();
     118          this.nameDataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     119          this.userBindingSource = new System.Windows.Forms.BindingSource(this.components);
     120          this.toolStrip7 = new System.Windows.Forms.ToolStrip();
     121          this.tsbAddUserToRole = new System.Windows.Forms.ToolStripButton();
     122          this.panel7 = new System.Windows.Forms.Panel();
     123          this.dgvRoleUsers = new System.Windows.Forms.DataGridView();
     124          this.nameDataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
     125          this.userBindingSource1 = new System.Windows.Forms.BindingSource(this.components);
     126          this.toolStrip6 = new System.Windows.Forms.ToolStrip();
     127          this.tsbRemoveUserFromRole = new System.Windows.Forms.ToolStripButton();
     128          this.tbRoleName = new System.Windows.Forms.TextBox();
     129          this.tbRoleDescription = new System.Windows.Forms.TextBox();
     130          this.statusStrip3 = new System.Windows.Forms.StatusStrip();
     131          this.tssStatusRole = new System.Windows.Forms.ToolStripStatusLabel();
     132          this.toolStrip5 = new System.Windows.Forms.ToolStrip();
     133          this.tspNewRole = new System.Windows.Forms.ToolStripButton();
     134          this.tsbDeleteRole = new System.Windows.Forms.ToolStripButton();
     135          this.tsbSaveRole = new System.Windows.Forms.ToolStripButton();
     136          this.cbxApplications = new System.Windows.Forms.ComboBox();
     137          this.label1 = new System.Windows.Forms.Label();
     138          this.panel2 = new System.Windows.Forms.Panel();
     139          this.gbResetPassword = new System.Windows.Forms.GroupBox();
     140          this.btnResetPassword = new System.Windows.Forms.Button();
     141          this.tbPassword = new System.Windows.Forms.TextBox();
     142          descriptionLabel = new System.Windows.Forms.Label();
     143          nameLabel = new System.Windows.Forms.Label();
     144          commentLabel = new System.Windows.Forms.Label();
     145          emailLabel = new System.Windows.Forms.Label();
     146          nameLabel1 = new System.Windows.Forms.Label();
     147          nameLabel2 = new System.Windows.Forms.Label();
     148          descriptionLabel1 = new System.Windows.Forms.Label();
     149          label2 = new System.Windows.Forms.Label();
     150          this.tcMain.SuspendLayout();
     151          this.tpApplications.SuspendLayout();
     152          ((System.ComponentModel.ISupportInitialize)(this.dgvApplications)).BeginInit();
     153          ((System.ComponentModel.ISupportInitialize)(this.applicationBindingSource)).BeginInit();
     154          this.panel1.SuspendLayout();
     155          this.statusStrip1.SuspendLayout();
     156          this.toolStrip1.SuspendLayout();
     157          this.tpUsers.SuspendLayout();
     158          ((System.ComponentModel.ISupportInitialize)(this.dgvUsers)).BeginInit();
     159          ((System.ComponentModel.ISupportInitialize)(this.userBindingSource2)).BeginInit();
     160          this.toolStrip2.SuspendLayout();
     161          this.panel3.SuspendLayout();
     162          this.tableLayoutPanel1.SuspendLayout();
     163          this.panel4.SuspendLayout();
     164          ((System.ComponentModel.ISupportInitialize)(this.dgvUserRoles)).BeginInit();
     165          ((System.ComponentModel.ISupportInitialize)(this.roleBindingSource1)).BeginInit();
     166          this.toolStrip3.SuspendLayout();
     167          this.panel5.SuspendLayout();
     168          ((System.ComponentModel.ISupportInitialize)(this.dgvUserRolesAll)).BeginInit();
     169          ((System.ComponentModel.ISupportInitialize)(this.roleBindingSource2)).BeginInit();
     170          this.toolStrip4.SuspendLayout();
     171          this.statusStrip2.SuspendLayout();
     172          this.tpRoles.SuspendLayout();
     173          ((System.ComponentModel.ISupportInitialize)(this.dgvRoles)).BeginInit();
     174          ((System.ComponentModel.ISupportInitialize)(this.roleBindingSource)).BeginInit();
     175          this.panel6.SuspendLayout();
     176          this.tableLayoutPanel2.SuspendLayout();
     177          this.panel8.SuspendLayout();
     178          ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsersAll)).BeginInit();
     179          ((System.ComponentModel.ISupportInitialize)(this.userBindingSource)).BeginInit();
     180          this.toolStrip7.SuspendLayout();
     181          this.panel7.SuspendLayout();
     182          ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsers)).BeginInit();
     183          ((System.ComponentModel.ISupportInitialize)(this.userBindingSource1)).BeginInit();
     184          this.toolStrip6.SuspendLayout();
     185          this.statusStrip3.SuspendLayout();
     186          this.toolStrip5.SuspendLayout();
     187          this.panel2.SuspendLayout();
     188          this.gbResetPassword.SuspendLayout();
     189          this.SuspendLayout();
     190          //
     191          // descriptionLabel
     192          //
     193          descriptionLabel.AutoSize = true;
     194          descriptionLabel.Location = new System.Drawing.Point(21, 73);
     195          descriptionLabel.Name = "descriptionLabel";
     196          descriptionLabel.Size = new System.Drawing.Size(63, 13);
     197          descriptionLabel.TabIndex = 2;
     198          descriptionLabel.Text = "Description:";
     199          //
     200          // nameLabel
     201          //
     202          nameLabel.AutoSize = true;
     203          nameLabel.Location = new System.Drawing.Point(21, 23);
     204          nameLabel.Name = "nameLabel";
     205          nameLabel.Size = new System.Drawing.Size(38, 13);
     206          nameLabel.TabIndex = 8;
     207          nameLabel.Text = "Name:";
     208          //
     209          // commentLabel
     210          //
     211          commentLabel.AutoSize = true;
     212          commentLabel.Location = new System.Drawing.Point(15, 18);
     213          commentLabel.Name = "commentLabel";
     214          commentLabel.Size = new System.Drawing.Size(63, 13);
     215          commentLabel.TabIndex = 1;
     216          commentLabel.Text = "Description:";
     217          //
     218          // emailLabel
     219          //
     220          emailLabel.AutoSize = true;
     221          emailLabel.Location = new System.Drawing.Point(320, 18);
     222          emailLabel.Name = "emailLabel";
     223          emailLabel.Size = new System.Drawing.Size(35, 13);
     224          emailLabel.TabIndex = 3;
     225          emailLabel.Text = "Email:";
     226          //
     227          // nameLabel1
     228          //
     229          nameLabel1.AutoSize = true;
     230          nameLabel1.Location = new System.Drawing.Point(160, 18);
     231          nameLabel1.Name = "nameLabel1";
     232          nameLabel1.Size = new System.Drawing.Size(38, 13);
     233          nameLabel1.TabIndex = 9;
     234          nameLabel1.Text = "Name:";
     235          //
     236          // nameLabel2
     237          //
     238          nameLabel2.AutoSize = true;
     239          nameLabel2.Location = new System.Drawing.Point(24, 12);
     240          nameLabel2.Name = "nameLabel2";
     241          nameLabel2.Size = new System.Drawing.Size(38, 13);
     242          nameLabel2.TabIndex = 1;
     243          nameLabel2.Text = "Name:";
     244          //
     245          // descriptionLabel1
     246          //
     247          descriptionLabel1.AutoSize = true;
     248          descriptionLabel1.Location = new System.Drawing.Point(214, 12);
     249          descriptionLabel1.Name = "descriptionLabel1";
     250          descriptionLabel1.Size = new System.Drawing.Size(63, 13);
     251          descriptionLabel1.TabIndex = 5;
     252          descriptionLabel1.Text = "Description:";
     253          //
     254          // tcMain
     255          //
     256          this.tcMain.Controls.Add(this.tpApplications);
     257          this.tcMain.Controls.Add(this.tpUsers);
     258          this.tcMain.Controls.Add(this.tpRoles);
     259          this.tcMain.Dock = System.Windows.Forms.DockStyle.Fill;
     260          this.tcMain.Location = new System.Drawing.Point(0, 33);
     261          this.tcMain.Name = "tcMain";
     262          this.tcMain.SelectedIndex = 0;
     263          this.tcMain.Size = new System.Drawing.Size(1288, 647);
     264          this.tcMain.TabIndex = 0;
     265          //
     266          // tpApplications
     267          //
     268          this.tpApplications.AutoScroll = true;
     269          this.tpApplications.Controls.Add(this.dgvApplications);
     270          this.tpApplications.Controls.Add(this.panel1);
     271          this.tpApplications.Controls.Add(this.statusStrip1);
     272          this.tpApplications.Controls.Add(this.toolStrip1);
     273          this.tpApplications.Location = new System.Drawing.Point(4, 22);
     274          this.tpApplications.Name = "tpApplications";
     275          this.tpApplications.Padding = new System.Windows.Forms.Padding(3);
     276          this.tpApplications.Size = new System.Drawing.Size(1280, 621);
     277          this.tpApplications.TabIndex = 0;
     278          this.tpApplications.Text = "Applications";
     279          this.tpApplications.UseVisualStyleBackColor = true;
     280          //
     281          // dgvApplications
     282          //
     283          this.dgvApplications.AllowUserToAddRows = false;
     284          this.dgvApplications.AllowUserToDeleteRows = false;
     285          this.dgvApplications.AutoGenerateColumns = false;
     286          this.dgvApplications.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     287          this.dgvApplications.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     288            this.idDataGridViewTextBoxColumn,
     289            this.colName,
     290            this.colDescription});
     291          this.dgvApplications.DataSource = this.applicationBindingSource;
     292          this.dgvApplications.Dock = System.Windows.Forms.DockStyle.Fill;
     293          this.dgvApplications.Location = new System.Drawing.Point(3, 28);
     294          this.dgvApplications.Name = "dgvApplications";
     295          this.dgvApplications.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     296          this.dgvApplications.Size = new System.Drawing.Size(1274, 381);
     297          this.dgvApplications.TabIndex = 0;
     298          this.dgvApplications.SelectionChanged += new System.EventHandler(this.dgvApplications_SelectionChanged);
     299          //
     300          // idDataGridViewTextBoxColumn
     301          //
     302          this.idDataGridViewTextBoxColumn.DataPropertyName = "Id";
     303          this.idDataGridViewTextBoxColumn.HeaderText = "Id";
     304          this.idDataGridViewTextBoxColumn.Name = "idDataGridViewTextBoxColumn";
     305          this.idDataGridViewTextBoxColumn.Visible = false;
     306          //
     307          // colName
     308          //
     309          this.colName.DataPropertyName = "Name";
     310          this.colName.HeaderText = "Name";
     311          this.colName.Name = "colName";
     312          //
     313          // colDescription
     314          //
     315          this.colDescription.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     316          this.colDescription.DataPropertyName = "Description";
     317          this.colDescription.HeaderText = "Description";
     318          this.colDescription.Name = "colDescription";
     319          //
     320          // applicationBindingSource
     321          //
     322          this.applicationBindingSource.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Application);
     323          //
     324          // panel1
     325          //
     326          this.panel1.Controls.Add(this.tbApplicationDescription);
     327          this.panel1.Controls.Add(this.tbApplicationName);
     328          this.panel1.Controls.Add(nameLabel);
     329          this.panel1.Controls.Add(descriptionLabel);
     330          this.panel1.Dock = System.Windows.Forms.DockStyle.Bottom;
     331          this.panel1.Location = new System.Drawing.Point(3, 409);
     332          this.panel1.Name = "panel1";
     333          this.panel1.Size = new System.Drawing.Size(1274, 187);
     334          this.panel1.TabIndex = 15;
     335          //
     336          // tbApplicationDescription
     337          //
     338          this.tbApplicationDescription.Location = new System.Drawing.Point(24, 90);
     339          this.tbApplicationDescription.Name = "tbApplicationDescription";
     340          this.tbApplicationDescription.Size = new System.Drawing.Size(287, 20);
     341          this.tbApplicationDescription.TabIndex = 3;
     342          this.tbApplicationDescription.TextChanged += new System.EventHandler(this.tbApplicationDescription_TextChanged);
     343          //
     344          // tbApplicationName
     345          //
     346          this.tbApplicationName.Location = new System.Drawing.Point(24, 40);
     347          this.tbApplicationName.Name = "tbApplicationName";
     348          this.tbApplicationName.Size = new System.Drawing.Size(287, 20);
     349          this.tbApplicationName.TabIndex = 9;
     350          this.tbApplicationName.TextChanged += new System.EventHandler(this.tbApplicationName_TextChanged);
     351          //
     352          // statusStrip1
     353          //
     354          this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     355            this.tssApplicationStatus});
     356          this.statusStrip1.Location = new System.Drawing.Point(3, 596);
     357          this.statusStrip1.Name = "statusStrip1";
     358          this.statusStrip1.Size = new System.Drawing.Size(1274, 22);
     359          this.statusStrip1.TabIndex = 14;
     360          this.statusStrip1.Text = "statusStrip1";
     361          //
     362          // tssApplicationStatus
     363          //
     364          this.tssApplicationStatus.Name = "tssApplicationStatus";
     365          this.tssApplicationStatus.Size = new System.Drawing.Size(0, 17);
     366          //
     367          // toolStrip1
     368          //
     369          this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     370            this.tspNewApplication,
     371            this.tspDeleteApplication,
     372            this.tspSaveApplication});
     373          this.toolStrip1.Location = new System.Drawing.Point(3, 3);
     374          this.toolStrip1.Name = "toolStrip1";
     375          this.toolStrip1.Size = new System.Drawing.Size(1274, 25);
     376          this.toolStrip1.TabIndex = 13;
     377          this.toolStrip1.Text = "toolStrip1";
     378          //
     379          // tspNewApplication
     380          //
     381          this.tspNewApplication.Image = ((System.Drawing.Image)(resources.GetObject("tspNewApplication.Image")));
     382          this.tspNewApplication.ImageTransparentColor = System.Drawing.Color.Magenta;
     383          this.tspNewApplication.Name = "tspNewApplication";
     384          this.tspNewApplication.Size = new System.Drawing.Size(47, 22);
     385          this.tspNewApplication.Text = "new";
     386          this.tspNewApplication.Click += new System.EventHandler(this.tspNewApplication_Click);
     387          //
     388          // tspDeleteApplication
     389          //
     390          this.tspDeleteApplication.Image = ((System.Drawing.Image)(resources.GetObject("tspDeleteApplication.Image")));
     391          this.tspDeleteApplication.ImageTransparentColor = System.Drawing.Color.Magenta;
     392          this.tspDeleteApplication.Name = "tspDeleteApplication";
     393          this.tspDeleteApplication.Size = new System.Drawing.Size(57, 22);
     394          this.tspDeleteApplication.Text = "delete";
     395          this.tspDeleteApplication.Click += new System.EventHandler(this.tspDeleteApplication_Click);
     396          //
     397          // tspSaveApplication
     398          //
     399          this.tspSaveApplication.Image = ((System.Drawing.Image)(resources.GetObject("tspSaveApplication.Image")));
     400          this.tspSaveApplication.ImageTransparentColor = System.Drawing.Color.Magenta;
     401          this.tspSaveApplication.Name = "tspSaveApplication";
     402          this.tspSaveApplication.Size = new System.Drawing.Size(50, 22);
     403          this.tspSaveApplication.Text = "save";
     404          this.tspSaveApplication.Click += new System.EventHandler(this.tspSaveApplication_Click);
     405          //
     406          // tpUsers
     407          //
     408          this.tpUsers.AutoScroll = true;
     409          this.tpUsers.Controls.Add(this.dgvUsers);
     410          this.tpUsers.Controls.Add(this.toolStrip2);
     411          this.tpUsers.Controls.Add(this.panel3);
     412          this.tpUsers.Controls.Add(this.statusStrip2);
     413          this.tpUsers.Location = new System.Drawing.Point(4, 22);
     414          this.tpUsers.Name = "tpUsers";
     415          this.tpUsers.Padding = new System.Windows.Forms.Padding(3);
     416          this.tpUsers.Size = new System.Drawing.Size(1280, 621);
     417          this.tpUsers.TabIndex = 1;
     418          this.tpUsers.Text = "Users";
     419          this.tpUsers.UseVisualStyleBackColor = true;
     420          //
     421          // dgvUsers
     422          //
     423          this.dgvUsers.AllowUserToAddRows = false;
     424          this.dgvUsers.AllowUserToDeleteRows = false;
     425          this.dgvUsers.AutoGenerateColumns = false;
     426          this.dgvUsers.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     427          this.dgvUsers.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     428            this.idDataGridViewTextBoxColumn2,
    354429            this.nameDataGridViewTextBoxColumn,
    355             this.loweredApplicationNameDataGridViewTextBoxColumn,
     430            this.emailDataGridViewTextBoxColumn,
    356431            this.descriptionDataGridViewTextBoxColumn});
    357             this.dgvApplications.DataSource = this.bsApplications;
    358             this.dgvApplications.Location = new System.Drawing.Point(6, 6);
    359             this.dgvApplications.Name = "dgvApplications";
    360             this.dgvApplications.Size = new System.Drawing.Size(809, 194);
    361             this.dgvApplications.TabIndex = 0;
    362             this.dgvApplications.SelectionChanged += new System.EventHandler(this.dgvApplications_SelectionChanged);
    363             //
    364             // nameDataGridViewTextBoxColumn
    365             //
    366             this.nameDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    367             this.nameDataGridViewTextBoxColumn.DataPropertyName = "Name";
    368             this.nameDataGridViewTextBoxColumn.HeaderText = "Name";
    369             this.nameDataGridViewTextBoxColumn.Name = "nameDataGridViewTextBoxColumn";
    370             this.nameDataGridViewTextBoxColumn.Width = 60;
    371             //
    372             // loweredApplicationNameDataGridViewTextBoxColumn
    373             //
    374             this.loweredApplicationNameDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    375             this.loweredApplicationNameDataGridViewTextBoxColumn.DataPropertyName = "LoweredApplicationName";
    376             this.loweredApplicationNameDataGridViewTextBoxColumn.HeaderText = "LoweredApplicationName";
    377             this.loweredApplicationNameDataGridViewTextBoxColumn.Name = "loweredApplicationNameDataGridViewTextBoxColumn";
    378             this.loweredApplicationNameDataGridViewTextBoxColumn.Width = 153;
    379             //
    380             // descriptionDataGridViewTextBoxColumn
    381             //
    382             this.descriptionDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    383             this.descriptionDataGridViewTextBoxColumn.DataPropertyName = "Description";
    384             this.descriptionDataGridViewTextBoxColumn.HeaderText = "Description";
    385             this.descriptionDataGridViewTextBoxColumn.Name = "descriptionDataGridViewTextBoxColumn";
    386             this.descriptionDataGridViewTextBoxColumn.Width = 85;
    387             //
    388             // tpUsers
    389             //
    390             this.tpUsers.AutoScroll = true;
    391             this.tpUsers.Controls.Add(this.tcUser);
    392             this.tpUsers.Controls.Add(this.dgvUsers);
    393             this.tpUsers.Location = new System.Drawing.Point(4, 22);
    394             this.tpUsers.Name = "tpUsers";
    395             this.tpUsers.Padding = new System.Windows.Forms.Padding(3);
    396             this.tpUsers.Size = new System.Drawing.Size(821, 530);
    397             this.tpUsers.TabIndex = 1;
    398             this.tpUsers.Text = "Users";
    399             this.tpUsers.UseVisualStyleBackColor = true;
    400             //
    401             // tcUser
    402             //
    403             this.tcUser.Controls.Add(this.tabPage1);
    404             this.tcUser.Controls.Add(this.tabPage2);
    405             this.tcUser.Location = new System.Drawing.Point(6, 212);
    406             this.tcUser.Name = "tcUser";
    407             this.tcUser.SelectedIndex = 0;
    408             this.tcUser.Size = new System.Drawing.Size(809, 312);
    409             this.tcUser.TabIndex = 18;
    410             //
    411             // tabPage1
    412             //
    413             this.tabPage1.Controls.Add(this.passwordTextBox);
    414             this.tabPage1.Controls.Add(this.isApprovedCheckBox);
    415             this.tabPage1.Controls.Add(this.btnUpdateUser);
    416             this.tabPage1.Controls.Add(this.commentTextBox);
    417             this.tabPage1.Controls.Add(this.btnDeleteUser);
    418             this.tabPage1.Controls.Add(commentLabel);
    419             this.tabPage1.Controls.Add(this.btnNewUser);
    420             this.tabPage1.Controls.Add(this.emailTextBox);
    421             this.tabPage1.Controls.Add(passwordSaltLabel);
    422             this.tabPage1.Controls.Add(emailLabel);
    423             this.tabPage1.Controls.Add(this.passwordSaltTextBox);
    424             this.tabPage1.Controls.Add(isApprovedLabel);
    425             this.tabPage1.Controls.Add(passwordLabel);
    426             this.tabPage1.Controls.Add(this.nameTextBox1);
    427             this.tabPage1.Controls.Add(nameLabel1);
    428             this.tabPage1.Location = new System.Drawing.Point(4, 22);
    429             this.tabPage1.Name = "tabPage1";
    430             this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
    431             this.tabPage1.Size = new System.Drawing.Size(801, 286);
    432             this.tabPage1.TabIndex = 0;
    433             this.tabPage1.Text = "tabPage1";
    434             this.tabPage1.UseVisualStyleBackColor = true;
    435             //
    436             // passwordTextBox
    437             //
    438             this.passwordTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsUsers, "Password", true));
    439             this.passwordTextBox.Location = new System.Drawing.Point(204, 80);
    440             this.passwordTextBox.Name = "passwordTextBox";
    441             this.passwordTextBox.Size = new System.Drawing.Size(100, 20);
    442             this.passwordTextBox.TabIndex = 12;
    443             //
    444             // bsUsers
    445             //
    446             this.bsUsers.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.User);
    447             //
    448             // isApprovedCheckBox
    449             //
    450             this.isApprovedCheckBox.DataBindings.Add(new System.Windows.Forms.Binding("CheckState", this.bsUsers, "IsApproved", true));
    451             this.isApprovedCheckBox.Location = new System.Drawing.Point(114, 108);
    452             this.isApprovedCheckBox.Name = "isApprovedCheckBox";
    453             this.isApprovedCheckBox.Size = new System.Drawing.Size(104, 24);
    454             this.isApprovedCheckBox.TabIndex = 6;
    455             this.isApprovedCheckBox.Text = "checkBox1";
    456             this.isApprovedCheckBox.UseVisualStyleBackColor = true;
    457             //
    458             // btnUpdateUser
    459             //
    460             this.btnUpdateUser.Location = new System.Drawing.Point(505, 102);
    461             this.btnUpdateUser.Name = "btnUpdateUser";
    462             this.btnUpdateUser.Size = new System.Drawing.Size(75, 23);
    463             this.btnUpdateUser.TabIndex = 17;
    464             this.btnUpdateUser.Text = "upd";
    465             this.btnUpdateUser.UseVisualStyleBackColor = true;
    466             this.btnUpdateUser.Click += new System.EventHandler(this.btnUpdateUser_Click);
    467             //
    468             // commentTextBox
    469             //
    470             this.commentTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsUsers, "Comment", true));
    471             this.commentTextBox.Location = new System.Drawing.Point(31, 32);
    472             this.commentTextBox.Name = "commentTextBox";
    473             this.commentTextBox.Size = new System.Drawing.Size(100, 20);
    474             this.commentTextBox.TabIndex = 2;
    475             //
    476             // btnDeleteUser
    477             //
    478             this.btnDeleteUser.Location = new System.Drawing.Point(505, 64);
    479             this.btnDeleteUser.Name = "btnDeleteUser";
    480             this.btnDeleteUser.Size = new System.Drawing.Size(75, 23);
    481             this.btnDeleteUser.TabIndex = 16;
    482             this.btnDeleteUser.Text = "del";
    483             this.btnDeleteUser.UseVisualStyleBackColor = true;
    484             this.btnDeleteUser.Click += new System.EventHandler(this.btnDeleteUser_Click);
    485             //
    486             // btnNewUser
    487             //
    488             this.btnNewUser.Location = new System.Drawing.Point(505, 28);
    489             this.btnNewUser.Name = "btnNewUser";
    490             this.btnNewUser.Size = new System.Drawing.Size(75, 23);
    491             this.btnNewUser.TabIndex = 15;
    492             this.btnNewUser.Text = "new";
    493             this.btnNewUser.UseVisualStyleBackColor = true;
    494             this.btnNewUser.Click += new System.EventHandler(this.btnNewUser_Click);
    495             //
    496             // emailTextBox
    497             //
    498             this.emailTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsUsers, "Email", true));
    499             this.emailTextBox.Location = new System.Drawing.Point(31, 80);
    500             this.emailTextBox.Name = "emailTextBox";
    501             this.emailTextBox.Size = new System.Drawing.Size(100, 20);
    502             this.emailTextBox.TabIndex = 4;
    503             //
    504             // passwordSaltTextBox
    505             //
    506             this.passwordSaltTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsUsers, "PasswordSalt", true));
    507             this.passwordSaltTextBox.Location = new System.Drawing.Point(338, 80);
    508             this.passwordSaltTextBox.Name = "passwordSaltTextBox";
    509             this.passwordSaltTextBox.Size = new System.Drawing.Size(100, 20);
    510             this.passwordSaltTextBox.TabIndex = 14;
    511             //
    512             // nameTextBox1
    513             //
    514             this.nameTextBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsUsers, "Name", true));
    515             this.nameTextBox1.Location = new System.Drawing.Point(204, 32);
    516             this.nameTextBox1.Name = "nameTextBox1";
    517             this.nameTextBox1.Size = new System.Drawing.Size(100, 20);
    518             this.nameTextBox1.TabIndex = 10;
    519             //
    520             // tabPage2
    521             //
    522             this.tabPage2.Controls.Add(this.btnAddRoleToUser);
    523             this.tabPage2.Controls.Add(this.btnRemoveRoleFromUser);
    524             this.tabPage2.Controls.Add(this.dgvUserRolesAll);
    525             this.tabPage2.Controls.Add(this.dgvUserRoles);
    526             this.tabPage2.Location = new System.Drawing.Point(4, 22);
    527             this.tabPage2.Name = "tabPage2";
    528             this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
    529             this.tabPage2.Size = new System.Drawing.Size(801, 286);
    530             this.tabPage2.TabIndex = 1;
    531             this.tabPage2.Text = "tabPage2";
    532             this.tabPage2.UseVisualStyleBackColor = true;
    533             //
    534             // btnAddRoleToUser
    535             //
    536             this.btnAddRoleToUser.Location = new System.Drawing.Point(463, 24);
    537             this.btnAddRoleToUser.Name = "btnAddRoleToUser";
    538             this.btnAddRoleToUser.Size = new System.Drawing.Size(75, 23);
    539             this.btnAddRoleToUser.TabIndex = 3;
    540             this.btnAddRoleToUser.Text = "add";
    541             this.btnAddRoleToUser.UseVisualStyleBackColor = true;
    542             this.btnAddRoleToUser.Click += new System.EventHandler(this.btnAddRoleToUser_Click);
    543             //
    544             // btnRemoveRoleFromUser
    545             //
    546             this.btnRemoveRoleFromUser.Location = new System.Drawing.Point(191, 24);
    547             this.btnRemoveRoleFromUser.Name = "btnRemoveRoleFromUser";
    548             this.btnRemoveRoleFromUser.Size = new System.Drawing.Size(75, 23);
    549             this.btnRemoveRoleFromUser.TabIndex = 2;
    550             this.btnRemoveRoleFromUser.Text = "rem";
    551             this.btnRemoveRoleFromUser.UseVisualStyleBackColor = true;
    552             this.btnRemoveRoleFromUser.Click += new System.EventHandler(this.btnRemoveRoleFromUser_Click);
    553             //
    554             // dgvUserRolesAll
    555             //
    556             this.dgvUserRolesAll.AllowUserToAddRows = false;
    557             this.dgvUserRolesAll.AllowUserToDeleteRows = false;
    558             this.dgvUserRolesAll.AutoGenerateColumns = false;
    559             this.dgvUserRolesAll.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    560             this.dgvUserRolesAll.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     432          this.dgvUsers.DataSource = this.userBindingSource2;
     433          this.dgvUsers.Dock = System.Windows.Forms.DockStyle.Fill;
     434          this.dgvUsers.Location = new System.Drawing.Point(3, 28);
     435          this.dgvUsers.Name = "dgvUsers";
     436          this.dgvUsers.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     437          this.dgvUsers.Size = new System.Drawing.Size(1274, 213);
     438          this.dgvUsers.TabIndex = 0;
     439          this.dgvUsers.SelectionChanged += new System.EventHandler(this.dgvUsers_SelectionChanged);
     440          //
     441          // idDataGridViewTextBoxColumn2
     442          //
     443          this.idDataGridViewTextBoxColumn2.DataPropertyName = "Id";
     444          this.idDataGridViewTextBoxColumn2.HeaderText = "Id";
     445          this.idDataGridViewTextBoxColumn2.Name = "idDataGridViewTextBoxColumn2";
     446          this.idDataGridViewTextBoxColumn2.Visible = false;
     447          //
     448          // nameDataGridViewTextBoxColumn
     449          //
     450          this.nameDataGridViewTextBoxColumn.DataPropertyName = "Name";
     451          this.nameDataGridViewTextBoxColumn.HeaderText = "Name";
     452          this.nameDataGridViewTextBoxColumn.Name = "nameDataGridViewTextBoxColumn";
     453          //
     454          // emailDataGridViewTextBoxColumn
     455          //
     456          this.emailDataGridViewTextBoxColumn.DataPropertyName = "Email";
     457          this.emailDataGridViewTextBoxColumn.HeaderText = "Email";
     458          this.emailDataGridViewTextBoxColumn.Name = "emailDataGridViewTextBoxColumn";
     459          //
     460          // descriptionDataGridViewTextBoxColumn
     461          //
     462          this.descriptionDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     463          this.descriptionDataGridViewTextBoxColumn.DataPropertyName = "Description";
     464          this.descriptionDataGridViewTextBoxColumn.HeaderText = "Description";
     465          this.descriptionDataGridViewTextBoxColumn.Name = "descriptionDataGridViewTextBoxColumn";
     466          //
     467          // userBindingSource2
     468          //
     469          this.userBindingSource2.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.User);
     470          //
     471          // toolStrip2
     472          //
     473          this.toolStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     474            this.tsbNewUser,
     475            this.tsbDeleteUser,
     476            this.tsbSaveUser});
     477          this.toolStrip2.Location = new System.Drawing.Point(3, 3);
     478          this.toolStrip2.Name = "toolStrip2";
     479          this.toolStrip2.Size = new System.Drawing.Size(1274, 25);
     480          this.toolStrip2.TabIndex = 22;
     481          this.toolStrip2.Text = "toolStrip2";
     482          //
     483          // tsbNewUser
     484          //
     485          this.tsbNewUser.Image = ((System.Drawing.Image)(resources.GetObject("tsbNewUser.Image")));
     486          this.tsbNewUser.ImageTransparentColor = System.Drawing.Color.Magenta;
     487          this.tsbNewUser.Name = "tsbNewUser";
     488          this.tsbNewUser.Size = new System.Drawing.Size(47, 22);
     489          this.tsbNewUser.Text = "new";
     490          this.tsbNewUser.Click += new System.EventHandler(this.tsbNewUser_Click);
     491          //
     492          // tsbDeleteUser
     493          //
     494          this.tsbDeleteUser.Image = ((System.Drawing.Image)(resources.GetObject("tsbDeleteUser.Image")));
     495          this.tsbDeleteUser.ImageTransparentColor = System.Drawing.Color.Magenta;
     496          this.tsbDeleteUser.Name = "tsbDeleteUser";
     497          this.tsbDeleteUser.Size = new System.Drawing.Size(57, 22);
     498          this.tsbDeleteUser.Text = "delete";
     499          this.tsbDeleteUser.Click += new System.EventHandler(this.tsbDeleteUser_Click);
     500          //
     501          // tsbSaveUser
     502          //
     503          this.tsbSaveUser.Image = ((System.Drawing.Image)(resources.GetObject("tsbSaveUser.Image")));
     504          this.tsbSaveUser.ImageTransparentColor = System.Drawing.Color.Magenta;
     505          this.tsbSaveUser.Name = "tsbSaveUser";
     506          this.tsbSaveUser.Size = new System.Drawing.Size(50, 22);
     507          this.tsbSaveUser.Text = "save";
     508          this.tsbSaveUser.Click += new System.EventHandler(this.tsbSaveUser_Click);
     509          //
     510          // panel3
     511          //
     512          this.panel3.Controls.Add(this.gbResetPassword);
     513          this.panel3.Controls.Add(this.tableLayoutPanel1);
     514          this.panel3.Controls.Add(this.label3);
     515          this.panel3.Controls.Add(nameLabel1);
     516          this.panel3.Controls.Add(this.tbUserComment);
     517          this.panel3.Controls.Add(this.tbUserName);
     518          this.panel3.Controls.Add(emailLabel);
     519          this.panel3.Controls.Add(this.tbUserEmail);
     520          this.panel3.Controls.Add(commentLabel);
     521          this.panel3.Dock = System.Windows.Forms.DockStyle.Bottom;
     522          this.panel3.Location = new System.Drawing.Point(3, 241);
     523          this.panel3.Name = "panel3";
     524          this.panel3.Size = new System.Drawing.Size(1274, 355);
     525          this.panel3.TabIndex = 21;
     526          //
     527          // tableLayoutPanel1
     528          //
     529          this.tableLayoutPanel1.ColumnCount = 2;
     530          this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
     531          this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
     532          this.tableLayoutPanel1.Controls.Add(this.panel4, 0, 0);
     533          this.tableLayoutPanel1.Controls.Add(this.panel5, 1, 0);
     534          this.tableLayoutPanel1.Location = new System.Drawing.Point(18, 94);
     535          this.tableLayoutPanel1.Name = "tableLayoutPanel1";
     536          this.tableLayoutPanel1.RowCount = 1;
     537          this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
     538          this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 219F));
     539          this.tableLayoutPanel1.Size = new System.Drawing.Size(882, 219);
     540          this.tableLayoutPanel1.TabIndex = 20;
     541          //
     542          // panel4
     543          //
     544          this.panel4.Controls.Add(this.dgvUserRoles);
     545          this.panel4.Controls.Add(this.toolStrip3);
     546          this.panel4.Dock = System.Windows.Forms.DockStyle.Fill;
     547          this.panel4.Location = new System.Drawing.Point(3, 3);
     548          this.panel4.Name = "panel4";
     549          this.panel4.Size = new System.Drawing.Size(435, 213);
     550          this.panel4.TabIndex = 19;
     551          //
     552          // dgvUserRoles
     553          //
     554          this.dgvUserRoles.AllowUserToAddRows = false;
     555          this.dgvUserRoles.AllowUserToDeleteRows = false;
     556          this.dgvUserRoles.AutoGenerateColumns = false;
     557          this.dgvUserRoles.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     558          this.dgvUserRoles.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
    561559            this.nameDataGridViewTextBoxColumn4});
    562             this.dgvUserRolesAll.DataSource = this.bsRoles;
    563             this.dgvUserRolesAll.Location = new System.Drawing.Point(544, 24);
    564             this.dgvUserRolesAll.Name = "dgvUserRolesAll";
    565             this.dgvUserRolesAll.Size = new System.Drawing.Size(175, 242);
    566             this.dgvUserRolesAll.TabIndex = 1;
    567             //
    568             // nameDataGridViewTextBoxColumn4
    569             //
    570             this.nameDataGridViewTextBoxColumn4.DataPropertyName = "Name";
    571             this.nameDataGridViewTextBoxColumn4.HeaderText = "Name";
    572             this.nameDataGridViewTextBoxColumn4.Name = "nameDataGridViewTextBoxColumn4";
    573             //
    574             // bsRoles
    575             //
    576             this.bsRoles.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Role);
    577             //
    578             // dgvUserRoles
    579             //
    580             this.dgvUserRoles.AllowUserToAddRows = false;
    581             this.dgvUserRoles.AllowUserToDeleteRows = false;
    582             this.dgvUserRoles.AutoGenerateColumns = false;
    583             this.dgvUserRoles.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    584             this.dgvUserRoles.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
    585             this.nameDataGridViewTextBoxColumn3});
    586             this.dgvUserRoles.DataSource = this.bsUserRoles;
    587             this.dgvUserRoles.Location = new System.Drawing.Point(17, 24);
    588             this.dgvUserRoles.Name = "dgvUserRoles";
    589             this.dgvUserRoles.Size = new System.Drawing.Size(168, 242);
    590             this.dgvUserRoles.TabIndex = 0;
    591             //
    592             // nameDataGridViewTextBoxColumn3
    593             //
    594             this.nameDataGridViewTextBoxColumn3.DataPropertyName = "Name";
    595             this.nameDataGridViewTextBoxColumn3.HeaderText = "Name";
    596             this.nameDataGridViewTextBoxColumn3.Name = "nameDataGridViewTextBoxColumn3";
    597             //
    598             // bsUserRoles
    599             //
    600             this.bsUserRoles.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Role);
    601             //
    602             // dgvUsers
    603             //
    604             this.dgvUsers.AllowUserToAddRows = false;
    605             this.dgvUsers.AllowUserToDeleteRows = false;
    606             this.dgvUsers.AutoGenerateColumns = false;
    607             this.dgvUsers.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    608             this.dgvUsers.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
    609             this.nameDataGridViewTextBoxColumn1,
    610             this.emailDataGridViewTextBoxColumn,
    611             this.commentDataGridViewTextBoxColumn,
    612             this.lastLoginDateDataGridViewTextBoxColumn,
    613             this.lastPasswordChangeDateDataGridViewTextBoxColumn,
    614             this.lastLockoutDateDataGridViewTextBoxColumn,
    615             this.lastActivityDateDataGridViewTextBoxColumn,
    616             this.isLookedOutDataGridViewCheckBoxColumn,
    617             this.isApprovedDataGridViewCheckBoxColumn});
    618             this.dgvUsers.DataSource = this.bsUsers;
    619             this.dgvUsers.Location = new System.Drawing.Point(6, 6);
    620             this.dgvUsers.Name = "dgvUsers";
    621             this.dgvUsers.Size = new System.Drawing.Size(809, 191);
    622             this.dgvUsers.TabIndex = 0;
    623             this.dgvUsers.SelectionChanged += new System.EventHandler(this.dgvUsers_SelectionChanged);
    624             //
    625             // nameDataGridViewTextBoxColumn1
    626             //
    627             this.nameDataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    628             this.nameDataGridViewTextBoxColumn1.DataPropertyName = "Name";
    629             this.nameDataGridViewTextBoxColumn1.HeaderText = "Name";
    630             this.nameDataGridViewTextBoxColumn1.Name = "nameDataGridViewTextBoxColumn1";
    631             this.nameDataGridViewTextBoxColumn1.Width = 60;
    632             //
    633             // emailDataGridViewTextBoxColumn
    634             //
    635             this.emailDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    636             this.emailDataGridViewTextBoxColumn.DataPropertyName = "Email";
    637             this.emailDataGridViewTextBoxColumn.HeaderText = "Email";
    638             this.emailDataGridViewTextBoxColumn.Name = "emailDataGridViewTextBoxColumn";
    639             this.emailDataGridViewTextBoxColumn.Width = 57;
    640             //
    641             // commentDataGridViewTextBoxColumn
    642             //
    643             this.commentDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    644             this.commentDataGridViewTextBoxColumn.DataPropertyName = "Comment";
    645             this.commentDataGridViewTextBoxColumn.HeaderText = "Comment";
    646             this.commentDataGridViewTextBoxColumn.Name = "commentDataGridViewTextBoxColumn";
    647             this.commentDataGridViewTextBoxColumn.Width = 76;
    648             //
    649             // lastLoginDateDataGridViewTextBoxColumn
    650             //
    651             this.lastLoginDateDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    652             this.lastLoginDateDataGridViewTextBoxColumn.DataPropertyName = "LastLoginDate";
    653             this.lastLoginDateDataGridViewTextBoxColumn.HeaderText = "LastLoginDate";
    654             this.lastLoginDateDataGridViewTextBoxColumn.Name = "lastLoginDateDataGridViewTextBoxColumn";
    655             this.lastLoginDateDataGridViewTextBoxColumn.Width = 101;
    656             //
    657             // lastPasswordChangeDateDataGridViewTextBoxColumn
    658             //
    659             this.lastPasswordChangeDateDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    660             this.lastPasswordChangeDateDataGridViewTextBoxColumn.DataPropertyName = "LastPasswordChangeDate";
    661             this.lastPasswordChangeDateDataGridViewTextBoxColumn.HeaderText = "LastPasswordChangeDate";
    662             this.lastPasswordChangeDateDataGridViewTextBoxColumn.Name = "lastPasswordChangeDateDataGridViewTextBoxColumn";
    663             this.lastPasswordChangeDateDataGridViewTextBoxColumn.Width = 158;
    664             //
    665             // lastLockoutDateDataGridViewTextBoxColumn
    666             //
    667             this.lastLockoutDateDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    668             this.lastLockoutDateDataGridViewTextBoxColumn.DataPropertyName = "LastLockoutDate";
    669             this.lastLockoutDateDataGridViewTextBoxColumn.HeaderText = "LastLockoutDate";
    670             this.lastLockoutDateDataGridViewTextBoxColumn.Name = "lastLockoutDateDataGridViewTextBoxColumn";
    671             this.lastLockoutDateDataGridViewTextBoxColumn.Width = 114;
    672             //
    673             // lastActivityDateDataGridViewTextBoxColumn
    674             //
    675             this.lastActivityDateDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    676             this.lastActivityDateDataGridViewTextBoxColumn.DataPropertyName = "LastActivityDate";
    677             this.lastActivityDateDataGridViewTextBoxColumn.HeaderText = "LastActivityDate";
    678             this.lastActivityDateDataGridViewTextBoxColumn.Name = "lastActivityDateDataGridViewTextBoxColumn";
    679             this.lastActivityDateDataGridViewTextBoxColumn.Width = 109;
    680             //
    681             // isLookedOutDataGridViewCheckBoxColumn
    682             //
    683             this.isLookedOutDataGridViewCheckBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    684             this.isLookedOutDataGridViewCheckBoxColumn.DataPropertyName = "IsLookedOut";
    685             this.isLookedOutDataGridViewCheckBoxColumn.HeaderText = "IsLookedOut";
    686             this.isLookedOutDataGridViewCheckBoxColumn.Name = "isLookedOutDataGridViewCheckBoxColumn";
    687             this.isLookedOutDataGridViewCheckBoxColumn.Width = 74;
    688             //
    689             // isApprovedDataGridViewCheckBoxColumn
    690             //
    691             this.isApprovedDataGridViewCheckBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    692             this.isApprovedDataGridViewCheckBoxColumn.DataPropertyName = "IsApproved";
    693             this.isApprovedDataGridViewCheckBoxColumn.HeaderText = "IsApproved";
    694             this.isApprovedDataGridViewCheckBoxColumn.Name = "isApprovedDataGridViewCheckBoxColumn";
    695             this.isApprovedDataGridViewCheckBoxColumn.Width = 67;
    696             //
    697             // tpRoles
    698             //
    699             this.tpRoles.AutoScroll = true;
    700             this.tpRoles.Controls.Add(this.tcRole);
    701             this.tpRoles.Controls.Add(this.dgvRoles);
    702             this.tpRoles.Location = new System.Drawing.Point(4, 22);
    703             this.tpRoles.Name = "tpRoles";
    704             this.tpRoles.Size = new System.Drawing.Size(821, 530);
    705             this.tpRoles.TabIndex = 2;
    706             this.tpRoles.Text = "Roles";
    707             this.tpRoles.UseVisualStyleBackColor = true;
    708             //
    709             // tcRole
    710             //
    711             this.tcRole.Controls.Add(this.tabPage3);
    712             this.tcRole.Controls.Add(this.tabPage4);
    713             this.tcRole.Location = new System.Drawing.Point(3, 202);
    714             this.tcRole.Name = "tcRole";
    715             this.tcRole.SelectedIndex = 0;
    716             this.tcRole.Size = new System.Drawing.Size(815, 253);
    717             this.tcRole.TabIndex = 10;
    718             //
    719             // tabPage3
    720             //
    721             this.tabPage3.Controls.Add(this.btnNewRole);
    722             this.tabPage3.Controls.Add(descriptionLabel1);
    723             this.tabPage3.Controls.Add(this.btnUpdateRole);
    724             this.tabPage3.Controls.Add(this.descriptionTextBox1);
    725             this.tabPage3.Controls.Add(this.btnDeleteRole);
    726             this.tabPage3.Controls.Add(loweredRoleNameLabel);
    727             this.tabPage3.Controls.Add(this.loweredRoleNameTextBox);
    728             this.tabPage3.Controls.Add(this.nameTextBox2);
    729             this.tabPage3.Controls.Add(nameLabel2);
    730             this.tabPage3.Location = new System.Drawing.Point(4, 22);
    731             this.tabPage3.Name = "tabPage3";
    732             this.tabPage3.Padding = new System.Windows.Forms.Padding(3);
    733             this.tabPage3.Size = new System.Drawing.Size(807, 227);
    734             this.tabPage3.TabIndex = 0;
    735             this.tabPage3.Text = "tabPage3";
    736             this.tabPage3.UseVisualStyleBackColor = true;
    737             //
    738             // btnNewRole
    739             //
    740             this.btnNewRole.Location = new System.Drawing.Point(205, 42);
    741             this.btnNewRole.Name = "btnNewRole";
    742             this.btnNewRole.Size = new System.Drawing.Size(75, 23);
    743             this.btnNewRole.TabIndex = 7;
    744             this.btnNewRole.Text = "new";
    745             this.btnNewRole.UseVisualStyleBackColor = true;
    746             this.btnNewRole.Click += new System.EventHandler(this.btnNewRole_Click);
    747             //
    748             // btnUpdateRole
    749             //
    750             this.btnUpdateRole.Location = new System.Drawing.Point(205, 102);
    751             this.btnUpdateRole.Name = "btnUpdateRole";
    752             this.btnUpdateRole.Size = new System.Drawing.Size(75, 23);
    753             this.btnUpdateRole.TabIndex = 9;
    754             this.btnUpdateRole.Text = "upd";
    755             this.btnUpdateRole.UseVisualStyleBackColor = true;
    756             this.btnUpdateRole.Click += new System.EventHandler(this.btnUpdateRole_Click);
    757             //
    758             // descriptionTextBox1
    759             //
    760             this.descriptionTextBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsRoles, "Description", true));
    761             this.descriptionTextBox1.Location = new System.Drawing.Point(44, 144);
    762             this.descriptionTextBox1.Name = "descriptionTextBox1";
    763             this.descriptionTextBox1.Size = new System.Drawing.Size(100, 20);
    764             this.descriptionTextBox1.TabIndex = 6;
    765             //
    766             // btnDeleteRole
    767             //
    768             this.btnDeleteRole.Location = new System.Drawing.Point(205, 72);
    769             this.btnDeleteRole.Name = "btnDeleteRole";
    770             this.btnDeleteRole.Size = new System.Drawing.Size(75, 23);
    771             this.btnDeleteRole.TabIndex = 8;
    772             this.btnDeleteRole.Text = "del";
    773             this.btnDeleteRole.UseVisualStyleBackColor = true;
    774             this.btnDeleteRole.Click += new System.EventHandler(this.btnDeleteRole_Click);
    775             //
    776             // loweredRoleNameTextBox
    777             //
    778             this.loweredRoleNameTextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsRoles, "LoweredRoleName", true));
    779             this.loweredRoleNameTextBox.Location = new System.Drawing.Point(44, 94);
    780             this.loweredRoleNameTextBox.Name = "loweredRoleNameTextBox";
    781             this.loweredRoleNameTextBox.Size = new System.Drawing.Size(100, 20);
    782             this.loweredRoleNameTextBox.TabIndex = 4;
    783             //
    784             // nameTextBox2
    785             //
    786             this.nameTextBox2.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bsRoles, "Name", true));
    787             this.nameTextBox2.Location = new System.Drawing.Point(44, 42);
    788             this.nameTextBox2.Name = "nameTextBox2";
    789             this.nameTextBox2.Size = new System.Drawing.Size(100, 20);
    790             this.nameTextBox2.TabIndex = 2;
    791             //
    792             // tabPage4
    793             //
    794             this.tabPage4.Controls.Add(this.btnAddUserToRole);
    795             this.tabPage4.Controls.Add(this.btnRemoveUserFromRole);
    796             this.tabPage4.Controls.Add(this.dgvRoleUsersAll);
    797             this.tabPage4.Controls.Add(this.dgvRoleUsers);
    798             this.tabPage4.Location = new System.Drawing.Point(4, 22);
    799             this.tabPage4.Name = "tabPage4";
    800             this.tabPage4.Padding = new System.Windows.Forms.Padding(3);
    801             this.tabPage4.Size = new System.Drawing.Size(807, 227);
    802             this.tabPage4.TabIndex = 1;
    803             this.tabPage4.Text = "tabPage4";
    804             this.tabPage4.UseVisualStyleBackColor = true;
    805             //
    806             // btnAddUserToRole
    807             //
    808             this.btnAddUserToRole.Location = new System.Drawing.Point(463, 37);
    809             this.btnAddUserToRole.Name = "btnAddUserToRole";
    810             this.btnAddUserToRole.Size = new System.Drawing.Size(75, 23);
    811             this.btnAddUserToRole.TabIndex = 3;
    812             this.btnAddUserToRole.Text = "add";
    813             this.btnAddUserToRole.UseVisualStyleBackColor = true;
    814             this.btnAddUserToRole.Click += new System.EventHandler(this.btnAddUserToRole_Click);
    815             //
    816             // btnRemoveUserFromRole
    817             //
    818             this.btnRemoveUserFromRole.Location = new System.Drawing.Point(205, 37);
    819             this.btnRemoveUserFromRole.Name = "btnRemoveUserFromRole";
    820             this.btnRemoveUserFromRole.Size = new System.Drawing.Size(75, 23);
    821             this.btnRemoveUserFromRole.TabIndex = 2;
    822             this.btnRemoveUserFromRole.Text = "rem";
    823             this.btnRemoveUserFromRole.UseVisualStyleBackColor = true;
    824             this.btnRemoveUserFromRole.Click += new System.EventHandler(this.btnRemoveUserFromRole_Click);
    825             //
    826             // dgvRoleUsersAll
    827             //
    828             this.dgvRoleUsersAll.AllowUserToAddRows = false;
    829             this.dgvRoleUsersAll.AllowUserToDeleteRows = false;
    830             this.dgvRoleUsersAll.AutoGenerateColumns = false;
    831             this.dgvRoleUsersAll.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    832             this.dgvRoleUsersAll.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
    833             this.nameDataGridViewTextBoxColumn6});
    834             this.dgvRoleUsersAll.DataSource = this.bsUsers;
    835             this.dgvRoleUsersAll.Location = new System.Drawing.Point(544, 37);
    836             this.dgvRoleUsersAll.Name = "dgvRoleUsersAll";
    837             this.dgvRoleUsersAll.Size = new System.Drawing.Size(240, 150);
    838             this.dgvRoleUsersAll.TabIndex = 1;
    839             //
    840             // nameDataGridViewTextBoxColumn6
    841             //
    842             this.nameDataGridViewTextBoxColumn6.DataPropertyName = "Name";
    843             this.nameDataGridViewTextBoxColumn6.HeaderText = "Name";
    844             this.nameDataGridViewTextBoxColumn6.Name = "nameDataGridViewTextBoxColumn6";
    845             //
    846             // dgvRoleUsers
    847             //
    848             this.dgvRoleUsers.AllowUserToAddRows = false;
    849             this.dgvRoleUsers.AllowUserToDeleteRows = false;
    850             this.dgvRoleUsers.AutoGenerateColumns = false;
    851             this.dgvRoleUsers.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    852             this.dgvRoleUsers.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     560          this.dgvUserRoles.DataSource = this.roleBindingSource1;
     561          this.dgvUserRoles.Dock = System.Windows.Forms.DockStyle.Fill;
     562          this.dgvUserRoles.Location = new System.Drawing.Point(0, 25);
     563          this.dgvUserRoles.Name = "dgvUserRoles";
     564          this.dgvUserRoles.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     565          this.dgvUserRoles.ShowCellErrors = false;
     566          this.dgvUserRoles.ShowCellToolTips = false;
     567          this.dgvUserRoles.ShowEditingIcon = false;
     568          this.dgvUserRoles.ShowRowErrors = false;
     569          this.dgvUserRoles.Size = new System.Drawing.Size(435, 188);
     570          this.dgvUserRoles.TabIndex = 0;
     571          //
     572          // nameDataGridViewTextBoxColumn4
     573          //
     574          this.nameDataGridViewTextBoxColumn4.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     575          this.nameDataGridViewTextBoxColumn4.DataPropertyName = "Name";
     576          this.nameDataGridViewTextBoxColumn4.HeaderText = "Name";
     577          this.nameDataGridViewTextBoxColumn4.Name = "nameDataGridViewTextBoxColumn4";
     578          //
     579          // roleBindingSource1
     580          //
     581          this.roleBindingSource1.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Role);
     582          //
     583          // toolStrip3
     584          //
     585          this.toolStrip3.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     586            this.tsbRemoveRoleFromUser});
     587          this.toolStrip3.Location = new System.Drawing.Point(0, 0);
     588          this.toolStrip3.Name = "toolStrip3";
     589          this.toolStrip3.Size = new System.Drawing.Size(435, 25);
     590          this.toolStrip3.TabIndex = 19;
     591          this.toolStrip3.Text = "toolStrip3";
     592          //
     593          // tsbRemoveRoleFromUser
     594          //
     595          this.tsbRemoveRoleFromUser.Image = ((System.Drawing.Image)(resources.GetObject("tsbRemoveRoleFromUser.Image")));
     596          this.tsbRemoveRoleFromUser.ImageTransparentColor = System.Drawing.Color.Magenta;
     597          this.tsbRemoveRoleFromUser.Name = "tsbRemoveRoleFromUser";
     598          this.tsbRemoveRoleFromUser.Size = new System.Drawing.Size(63, 22);
     599          this.tsbRemoveRoleFromUser.Text = "remove";
     600          this.tsbRemoveRoleFromUser.Click += new System.EventHandler(this.tsbRemoveRoleFromUser_Click);
     601          //
     602          // panel5
     603          //
     604          this.panel5.Controls.Add(this.dgvUserRolesAll);
     605          this.panel5.Controls.Add(this.toolStrip4);
     606          this.panel5.Dock = System.Windows.Forms.DockStyle.Fill;
     607          this.panel5.Location = new System.Drawing.Point(444, 3);
     608          this.panel5.Name = "panel5";
     609          this.panel5.Size = new System.Drawing.Size(435, 213);
     610          this.panel5.TabIndex = 20;
     611          //
     612          // dgvUserRolesAll
     613          //
     614          this.dgvUserRolesAll.AllowUserToAddRows = false;
     615          this.dgvUserRolesAll.AllowUserToDeleteRows = false;
     616          this.dgvUserRolesAll.AutoGenerateColumns = false;
     617          this.dgvUserRolesAll.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     618          this.dgvUserRolesAll.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
    853619            this.nameDataGridViewTextBoxColumn5});
    854             this.dgvRoleUsers.DataSource = this.bsRoleUsers;
    855             this.dgvRoleUsers.Location = new System.Drawing.Point(15, 37);
    856             this.dgvRoleUsers.Name = "dgvRoleUsers";
    857             this.dgvRoleUsers.Size = new System.Drawing.Size(184, 150);
    858             this.dgvRoleUsers.TabIndex = 0;
    859             //
    860             // nameDataGridViewTextBoxColumn5
    861             //
    862             this.nameDataGridViewTextBoxColumn5.DataPropertyName = "Name";
    863             this.nameDataGridViewTextBoxColumn5.HeaderText = "Name";
    864             this.nameDataGridViewTextBoxColumn5.Name = "nameDataGridViewTextBoxColumn5";
    865             //
    866             // bsRoleUsers
    867             //
    868             this.bsRoleUsers.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.User);
    869             //
    870             // dgvRoles
    871             //
    872             this.dgvRoles.AllowUserToAddRows = false;
    873             this.dgvRoles.AllowUserToDeleteRows = false;
    874             this.dgvRoles.AutoGenerateColumns = false;
    875             this.dgvRoles.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
    876             this.dgvRoles.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
    877             this.nameDataGridViewTextBoxColumn2,
    878             this.loweredRoleNameDataGridViewTextBoxColumn,
     620          this.dgvUserRolesAll.DataSource = this.roleBindingSource2;
     621          this.dgvUserRolesAll.Dock = System.Windows.Forms.DockStyle.Fill;
     622          this.dgvUserRolesAll.Location = new System.Drawing.Point(0, 25);
     623          this.dgvUserRolesAll.Name = "dgvUserRolesAll";
     624          this.dgvUserRolesAll.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     625          this.dgvUserRolesAll.Size = new System.Drawing.Size(435, 188);
     626          this.dgvUserRolesAll.TabIndex = 1;
     627          //
     628          // nameDataGridViewTextBoxColumn5
     629          //
     630          this.nameDataGridViewTextBoxColumn5.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     631          this.nameDataGridViewTextBoxColumn5.DataPropertyName = "Name";
     632          this.nameDataGridViewTextBoxColumn5.HeaderText = "Name";
     633          this.nameDataGridViewTextBoxColumn5.Name = "nameDataGridViewTextBoxColumn5";
     634          //
     635          // roleBindingSource2
     636          //
     637          this.roleBindingSource2.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Role);
     638          //
     639          // toolStrip4
     640          //
     641          this.toolStrip4.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     642            this.tsbAddRoleToUser});
     643          this.toolStrip4.Location = new System.Drawing.Point(0, 0);
     644          this.toolStrip4.Name = "toolStrip4";
     645          this.toolStrip4.Size = new System.Drawing.Size(435, 25);
     646          this.toolStrip4.TabIndex = 4;
     647          this.toolStrip4.Text = "toolStrip4";
     648          //
     649          // tsbAddRoleToUser
     650          //
     651          this.tsbAddRoleToUser.Image = ((System.Drawing.Image)(resources.GetObject("tsbAddRoleToUser.Image")));
     652          this.tsbAddRoleToUser.ImageTransparentColor = System.Drawing.Color.Magenta;
     653          this.tsbAddRoleToUser.Name = "tsbAddRoleToUser";
     654          this.tsbAddRoleToUser.Size = new System.Drawing.Size(45, 22);
     655          this.tsbAddRoleToUser.Text = "add";
     656          this.tsbAddRoleToUser.Click += new System.EventHandler(this.tsbAddRoleToUser_Click);
     657          //
     658          // label3
     659          //
     660          this.label3.AutoSize = true;
     661          this.label3.Location = new System.Drawing.Point(568, 168);
     662          this.label3.Name = "label3";
     663          this.label3.Size = new System.Drawing.Size(79, 13);
     664          this.label3.TabIndex = 19;
     665          this.label3.Text = "available Roles";
     666          //
     667          // tbUserComment
     668          //
     669          this.tbUserComment.Location = new System.Drawing.Point(18, 34);
     670          this.tbUserComment.Name = "tbUserComment";
     671          this.tbUserComment.Size = new System.Drawing.Size(100, 20);
     672          this.tbUserComment.TabIndex = 2;
     673          this.tbUserComment.TextChanged += new System.EventHandler(this.tbUserComment_TextChanged);
     674          //
     675          // tbUserName
     676          //
     677          this.tbUserName.Location = new System.Drawing.Point(163, 34);
     678          this.tbUserName.Name = "tbUserName";
     679          this.tbUserName.Size = new System.Drawing.Size(100, 20);
     680          this.tbUserName.TabIndex = 10;
     681          this.tbUserName.TextChanged += new System.EventHandler(this.tbUserName_TextChanged);
     682          //
     683          // tbUserEmail
     684          //
     685          this.tbUserEmail.Location = new System.Drawing.Point(323, 34);
     686          this.tbUserEmail.Name = "tbUserEmail";
     687          this.tbUserEmail.Size = new System.Drawing.Size(100, 20);
     688          this.tbUserEmail.TabIndex = 4;
     689          this.tbUserEmail.TextChanged += new System.EventHandler(this.tbUserEmail_TextChanged);
     690          //
     691          // statusStrip2
     692          //
     693          this.statusStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     694            this.tssStatusUser});
     695          this.statusStrip2.Location = new System.Drawing.Point(3, 596);
     696          this.statusStrip2.Name = "statusStrip2";
     697          this.statusStrip2.Size = new System.Drawing.Size(1274, 22);
     698          this.statusStrip2.TabIndex = 23;
     699          this.statusStrip2.Text = "statusStrip2";
     700          //
     701          // tssStatusUser
     702          //
     703          this.tssStatusUser.Name = "tssStatusUser";
     704          this.tssStatusUser.Size = new System.Drawing.Size(0, 17);
     705          //
     706          // tpRoles
     707          //
     708          this.tpRoles.AutoScroll = true;
     709          this.tpRoles.Controls.Add(this.dgvRoles);
     710          this.tpRoles.Controls.Add(this.panel6);
     711          this.tpRoles.Controls.Add(this.statusStrip3);
     712          this.tpRoles.Controls.Add(this.toolStrip5);
     713          this.tpRoles.Location = new System.Drawing.Point(4, 22);
     714          this.tpRoles.Name = "tpRoles";
     715          this.tpRoles.Size = new System.Drawing.Size(1280, 621);
     716          this.tpRoles.TabIndex = 2;
     717          this.tpRoles.Text = "Roles";
     718          this.tpRoles.UseVisualStyleBackColor = true;
     719          //
     720          // dgvRoles
     721          //
     722          this.dgvRoles.AllowUserToAddRows = false;
     723          this.dgvRoles.AllowUserToDeleteRows = false;
     724          this.dgvRoles.AutoGenerateColumns = false;
     725          this.dgvRoles.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     726          this.dgvRoles.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     727            this.idDataGridViewTextBoxColumn1,
     728            this.nameDataGridViewTextBoxColumn3,
    879729            this.descriptionDataGridViewTextBoxColumn1});
    880             this.dgvRoles.DataSource = this.bsRoles;
    881             this.dgvRoles.Location = new System.Drawing.Point(3, 3);
    882             this.dgvRoles.Name = "dgvRoles";
    883             this.dgvRoles.Size = new System.Drawing.Size(815, 193);
    884             this.dgvRoles.TabIndex = 0;
    885             this.dgvRoles.SelectionChanged += new System.EventHandler(this.dgvRoles_SelectionChanged);
    886             //
    887             // nameDataGridViewTextBoxColumn2
    888             //
    889             this.nameDataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    890             this.nameDataGridViewTextBoxColumn2.DataPropertyName = "Name";
    891             this.nameDataGridViewTextBoxColumn2.HeaderText = "Name";
    892             this.nameDataGridViewTextBoxColumn2.Name = "nameDataGridViewTextBoxColumn2";
    893             this.nameDataGridViewTextBoxColumn2.Width = 60;
    894             //
    895             // loweredRoleNameDataGridViewTextBoxColumn
    896             //
    897             this.loweredRoleNameDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    898             this.loweredRoleNameDataGridViewTextBoxColumn.DataPropertyName = "LoweredRoleName";
    899             this.loweredRoleNameDataGridViewTextBoxColumn.HeaderText = "LoweredRoleName";
    900             this.loweredRoleNameDataGridViewTextBoxColumn.Name = "loweredRoleNameDataGridViewTextBoxColumn";
    901             this.loweredRoleNameDataGridViewTextBoxColumn.Width = 123;
    902             //
    903             // descriptionDataGridViewTextBoxColumn1
    904             //
    905             this.descriptionDataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
    906             this.descriptionDataGridViewTextBoxColumn1.DataPropertyName = "Description";
    907             this.descriptionDataGridViewTextBoxColumn1.HeaderText = "Description";
    908             this.descriptionDataGridViewTextBoxColumn1.Name = "descriptionDataGridViewTextBoxColumn1";
    909             this.descriptionDataGridViewTextBoxColumn1.Width = 85;
    910             //
    911             // cbxApplications
    912             //
    913             this.cbxApplications.DataSource = this.bsApplicationsCombo;
    914             this.cbxApplications.DisplayMember = "Name";
    915             this.cbxApplications.FormattingEnabled = true;
    916             this.cbxApplications.Location = new System.Drawing.Point(31, 24);
    917             this.cbxApplications.Name = "cbxApplications";
    918             this.cbxApplications.Size = new System.Drawing.Size(234, 21);
    919             this.cbxApplications.TabIndex = 1;
    920             this.cbxApplications.SelectedIndexChanged += new System.EventHandler(this.cbxApplications_SelectedIndexChanged);
    921             //
    922             // bsApplicationsCombo
    923             //
    924             this.bsApplicationsCombo.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Application);
    925             //
    926             // UserManagement
    927             //
    928             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    929             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
    930             this.ClientSize = new System.Drawing.Size(904, 631);
    931             this.Controls.Add(this.cbxApplications);
    932             this.Controls.Add(this.tcMain);
    933             this.Name = "UserManagement";
    934             this.Text = "UserManagement";
    935             this.tcMain.ResumeLayout(false);
    936             this.tpApplications.ResumeLayout(false);
    937             this.tpApplications.PerformLayout();
    938             ((System.ComponentModel.ISupportInitialize)(this.bsApplications)).EndInit();
    939             ((System.ComponentModel.ISupportInitialize)(this.dgvApplications)).EndInit();
    940             this.tpUsers.ResumeLayout(false);
    941             this.tcUser.ResumeLayout(false);
    942             this.tabPage1.ResumeLayout(false);
    943             this.tabPage1.PerformLayout();
    944             ((System.ComponentModel.ISupportInitialize)(this.bsUsers)).EndInit();
    945             this.tabPage2.ResumeLayout(false);
    946             ((System.ComponentModel.ISupportInitialize)(this.dgvUserRolesAll)).EndInit();
    947             ((System.ComponentModel.ISupportInitialize)(this.bsRoles)).EndInit();
    948             ((System.ComponentModel.ISupportInitialize)(this.dgvUserRoles)).EndInit();
    949             ((System.ComponentModel.ISupportInitialize)(this.bsUserRoles)).EndInit();
    950             ((System.ComponentModel.ISupportInitialize)(this.dgvUsers)).EndInit();
    951             this.tpRoles.ResumeLayout(false);
    952             this.tcRole.ResumeLayout(false);
    953             this.tabPage3.ResumeLayout(false);
    954             this.tabPage3.PerformLayout();
    955             this.tabPage4.ResumeLayout(false);
    956             ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsersAll)).EndInit();
    957             ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsers)).EndInit();
    958             ((System.ComponentModel.ISupportInitialize)(this.bsRoleUsers)).EndInit();
    959             ((System.ComponentModel.ISupportInitialize)(this.dgvRoles)).EndInit();
    960             ((System.ComponentModel.ISupportInitialize)(this.bsApplicationsCombo)).EndInit();
    961             this.ResumeLayout(false);
     730          this.dgvRoles.DataSource = this.roleBindingSource;
     731          this.dgvRoles.Dock = System.Windows.Forms.DockStyle.Fill;
     732          this.dgvRoles.Location = new System.Drawing.Point(0, 25);
     733          this.dgvRoles.Name = "dgvRoles";
     734          this.dgvRoles.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     735          this.dgvRoles.Size = new System.Drawing.Size(1280, 266);
     736          this.dgvRoles.TabIndex = 0;
     737          this.dgvRoles.SelectionChanged += new System.EventHandler(this.dgvRoles_SelectionChanged);
     738          //
     739          // idDataGridViewTextBoxColumn1
     740          //
     741          this.idDataGridViewTextBoxColumn1.DataPropertyName = "Id";
     742          this.idDataGridViewTextBoxColumn1.HeaderText = "Id";
     743          this.idDataGridViewTextBoxColumn1.Name = "idDataGridViewTextBoxColumn1";
     744          this.idDataGridViewTextBoxColumn1.Visible = false;
     745          //
     746          // nameDataGridViewTextBoxColumn3
     747          //
     748          this.nameDataGridViewTextBoxColumn3.DataPropertyName = "Name";
     749          this.nameDataGridViewTextBoxColumn3.HeaderText = "Name";
     750          this.nameDataGridViewTextBoxColumn3.Name = "nameDataGridViewTextBoxColumn3";
     751          //
     752          // descriptionDataGridViewTextBoxColumn1
     753          //
     754          this.descriptionDataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     755          this.descriptionDataGridViewTextBoxColumn1.DataPropertyName = "Description";
     756          this.descriptionDataGridViewTextBoxColumn1.HeaderText = "Description";
     757          this.descriptionDataGridViewTextBoxColumn1.Name = "descriptionDataGridViewTextBoxColumn1";
     758          //
     759          // roleBindingSource
     760          //
     761          this.roleBindingSource.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.Role);
     762          //
     763          // panel6
     764          //
     765          this.panel6.Controls.Add(this.tableLayoutPanel2);
     766          this.panel6.Controls.Add(this.tbRoleName);
     767          this.panel6.Controls.Add(this.tbRoleDescription);
     768          this.panel6.Controls.Add(nameLabel2);
     769          this.panel6.Controls.Add(descriptionLabel1);
     770          this.panel6.Dock = System.Windows.Forms.DockStyle.Bottom;
     771          this.panel6.Location = new System.Drawing.Point(0, 291);
     772          this.panel6.Name = "panel6";
     773          this.panel6.Size = new System.Drawing.Size(1280, 308);
     774          this.panel6.TabIndex = 24;
     775          //
     776          // tableLayoutPanel2
     777          //
     778          this.tableLayoutPanel2.ColumnCount = 2;
     779          this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
     780          this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
     781          this.tableLayoutPanel2.Controls.Add(this.panel8, 1, 0);
     782          this.tableLayoutPanel2.Controls.Add(this.panel7, 0, 0);
     783          this.tableLayoutPanel2.Location = new System.Drawing.Point(27, 64);
     784          this.tableLayoutPanel2.Name = "tableLayoutPanel2";
     785          this.tableLayoutPanel2.RowCount = 1;
     786          this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
     787          this.tableLayoutPanel2.Size = new System.Drawing.Size(768, 194);
     788          this.tableLayoutPanel2.TabIndex = 7;
     789          //
     790          // panel8
     791          //
     792          this.panel8.Controls.Add(this.dgvRoleUsersAll);
     793          this.panel8.Controls.Add(this.toolStrip7);
     794          this.panel8.Dock = System.Windows.Forms.DockStyle.Fill;
     795          this.panel8.Location = new System.Drawing.Point(387, 3);
     796          this.panel8.Name = "panel8";
     797          this.panel8.Size = new System.Drawing.Size(378, 188);
     798          this.panel8.TabIndex = 26;
     799          //
     800          // dgvRoleUsersAll
     801          //
     802          this.dgvRoleUsersAll.AllowUserToAddRows = false;
     803          this.dgvRoleUsersAll.AllowUserToDeleteRows = false;
     804          this.dgvRoleUsersAll.AutoGenerateColumns = false;
     805          this.dgvRoleUsersAll.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     806          this.dgvRoleUsersAll.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     807            this.nameDataGridViewTextBoxColumn1});
     808          this.dgvRoleUsersAll.DataSource = this.userBindingSource;
     809          this.dgvRoleUsersAll.Dock = System.Windows.Forms.DockStyle.Fill;
     810          this.dgvRoleUsersAll.Location = new System.Drawing.Point(0, 25);
     811          this.dgvRoleUsersAll.Name = "dgvRoleUsersAll";
     812          this.dgvRoleUsersAll.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     813          this.dgvRoleUsersAll.Size = new System.Drawing.Size(378, 163);
     814          this.dgvRoleUsersAll.TabIndex = 1;
     815          //
     816          // nameDataGridViewTextBoxColumn1
     817          //
     818          this.nameDataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     819          this.nameDataGridViewTextBoxColumn1.DataPropertyName = "Name";
     820          this.nameDataGridViewTextBoxColumn1.HeaderText = "Name";
     821          this.nameDataGridViewTextBoxColumn1.Name = "nameDataGridViewTextBoxColumn1";
     822          //
     823          // userBindingSource
     824          //
     825          this.userBindingSource.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.User);
     826          //
     827          // toolStrip7
     828          //
     829          this.toolStrip7.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     830            this.tsbAddUserToRole});
     831          this.toolStrip7.Location = new System.Drawing.Point(0, 0);
     832          this.toolStrip7.Name = "toolStrip7";
     833          this.toolStrip7.Size = new System.Drawing.Size(378, 25);
     834          this.toolStrip7.TabIndex = 4;
     835          this.toolStrip7.Text = "toolStrip7";
     836          //
     837          // tsbAddUserToRole
     838          //
     839          this.tsbAddUserToRole.Image = ((System.Drawing.Image)(resources.GetObject("tsbAddUserToRole.Image")));
     840          this.tsbAddUserToRole.ImageTransparentColor = System.Drawing.Color.Magenta;
     841          this.tsbAddUserToRole.Name = "tsbAddUserToRole";
     842          this.tsbAddUserToRole.Size = new System.Drawing.Size(45, 22);
     843          this.tsbAddUserToRole.Text = "add";
     844          this.tsbAddUserToRole.Click += new System.EventHandler(this.tsbAddUserToRole_Click);
     845          //
     846          // panel7
     847          //
     848          this.panel7.Controls.Add(this.dgvRoleUsers);
     849          this.panel7.Controls.Add(this.toolStrip6);
     850          this.panel7.Dock = System.Windows.Forms.DockStyle.Fill;
     851          this.panel7.Location = new System.Drawing.Point(3, 3);
     852          this.panel7.Name = "panel7";
     853          this.panel7.Size = new System.Drawing.Size(378, 188);
     854          this.panel7.TabIndex = 25;
     855          //
     856          // dgvRoleUsers
     857          //
     858          this.dgvRoleUsers.AllowUserToAddRows = false;
     859          this.dgvRoleUsers.AllowUserToDeleteRows = false;
     860          this.dgvRoleUsers.AutoGenerateColumns = false;
     861          this.dgvRoleUsers.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
     862          this.dgvRoleUsers.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
     863            this.nameDataGridViewTextBoxColumn2});
     864          this.dgvRoleUsers.DataSource = this.userBindingSource1;
     865          this.dgvRoleUsers.Dock = System.Windows.Forms.DockStyle.Fill;
     866          this.dgvRoleUsers.Location = new System.Drawing.Point(0, 25);
     867          this.dgvRoleUsers.Name = "dgvRoleUsers";
     868          this.dgvRoleUsers.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
     869          this.dgvRoleUsers.Size = new System.Drawing.Size(378, 163);
     870          this.dgvRoleUsers.TabIndex = 0;
     871          //
     872          // nameDataGridViewTextBoxColumn2
     873          //
     874          this.nameDataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
     875          this.nameDataGridViewTextBoxColumn2.DataPropertyName = "Name";
     876          this.nameDataGridViewTextBoxColumn2.HeaderText = "Name";
     877          this.nameDataGridViewTextBoxColumn2.Name = "nameDataGridViewTextBoxColumn2";
     878          //
     879          // userBindingSource1
     880          //
     881          this.userBindingSource1.DataSource = typeof(HeuristicLab.Services.Authentication.DataTransfer.User);
     882          //
     883          // toolStrip6
     884          //
     885          this.toolStrip6.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     886            this.tsbRemoveUserFromRole});
     887          this.toolStrip6.Location = new System.Drawing.Point(0, 0);
     888          this.toolStrip6.Name = "toolStrip6";
     889          this.toolStrip6.Size = new System.Drawing.Size(378, 25);
     890          this.toolStrip6.TabIndex = 3;
     891          this.toolStrip6.Text = "toolStrip6";
     892          //
     893          // tsbRemoveUserFromRole
     894          //
     895          this.tsbRemoveUserFromRole.Image = ((System.Drawing.Image)(resources.GetObject("tsbRemoveUserFromRole.Image")));
     896          this.tsbRemoveUserFromRole.ImageTransparentColor = System.Drawing.Color.Magenta;
     897          this.tsbRemoveUserFromRole.Name = "tsbRemoveUserFromRole";
     898          this.tsbRemoveUserFromRole.Size = new System.Drawing.Size(63, 22);
     899          this.tsbRemoveUserFromRole.Text = "remove";
     900          this.tsbRemoveUserFromRole.Click += new System.EventHandler(this.tsbRemoveUserFromRole_Click);
     901          //
     902          // tbRoleName
     903          //
     904          this.tbRoleName.Location = new System.Drawing.Point(27, 29);
     905          this.tbRoleName.Name = "tbRoleName";
     906          this.tbRoleName.Size = new System.Drawing.Size(164, 20);
     907          this.tbRoleName.TabIndex = 2;
     908          this.tbRoleName.TextChanged += new System.EventHandler(this.tbRoleName_TextChanged);
     909          //
     910          // tbRoleDescription
     911          //
     912          this.tbRoleDescription.Location = new System.Drawing.Point(217, 29);
     913          this.tbRoleDescription.Name = "tbRoleDescription";
     914          this.tbRoleDescription.Size = new System.Drawing.Size(200, 20);
     915          this.tbRoleDescription.TabIndex = 6;
     916          this.tbRoleDescription.TextChanged += new System.EventHandler(this.tbRoleDescription_TextChanged);
     917          //
     918          // statusStrip3
     919          //
     920          this.statusStrip3.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     921            this.tssStatusRole});
     922          this.statusStrip3.Location = new System.Drawing.Point(0, 599);
     923          this.statusStrip3.Name = "statusStrip3";
     924          this.statusStrip3.Size = new System.Drawing.Size(1280, 22);
     925          this.statusStrip3.TabIndex = 23;
     926          this.statusStrip3.Text = "statusStrip3";
     927          //
     928          // tssStatusRole
     929          //
     930          this.tssStatusRole.Name = "tssStatusRole";
     931          this.tssStatusRole.Size = new System.Drawing.Size(0, 17);
     932          //
     933          // toolStrip5
     934          //
     935          this.toolStrip5.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
     936            this.tspNewRole,
     937            this.tsbDeleteRole,
     938            this.tsbSaveRole});
     939          this.toolStrip5.Location = new System.Drawing.Point(0, 0);
     940          this.toolStrip5.Name = "toolStrip5";
     941          this.toolStrip5.Size = new System.Drawing.Size(1280, 25);
     942          this.toolStrip5.TabIndex = 22;
     943          this.toolStrip5.Text = "toolStrip5";
     944          //
     945          // tspNewRole
     946          //
     947          this.tspNewRole.Image = ((System.Drawing.Image)(resources.GetObject("tspNewRole.Image")));
     948          this.tspNewRole.ImageTransparentColor = System.Drawing.Color.Magenta;
     949          this.tspNewRole.Name = "tspNewRole";
     950          this.tspNewRole.Size = new System.Drawing.Size(47, 22);
     951          this.tspNewRole.Text = "new";
     952          this.tspNewRole.Click += new System.EventHandler(this.tspNewRole_Click);
     953          //
     954          // tsbDeleteRole
     955          //
     956          this.tsbDeleteRole.Image = ((System.Drawing.Image)(resources.GetObject("tsbDeleteRole.Image")));
     957          this.tsbDeleteRole.ImageTransparentColor = System.Drawing.Color.Magenta;
     958          this.tsbDeleteRole.Name = "tsbDeleteRole";
     959          this.tsbDeleteRole.Size = new System.Drawing.Size(57, 22);
     960          this.tsbDeleteRole.Text = "delete";
     961          this.tsbDeleteRole.Click += new System.EventHandler(this.tsbDeleteRole_Click);
     962          //
     963          // tsbSaveRole
     964          //
     965          this.tsbSaveRole.Image = ((System.Drawing.Image)(resources.GetObject("tsbSaveRole.Image")));
     966          this.tsbSaveRole.ImageTransparentColor = System.Drawing.Color.Magenta;
     967          this.tsbSaveRole.Name = "tsbSaveRole";
     968          this.tsbSaveRole.Size = new System.Drawing.Size(50, 22);
     969          this.tsbSaveRole.Text = "save";
     970          this.tsbSaveRole.Click += new System.EventHandler(this.tsbSaveRole_Click);
     971          //
     972          // cbxApplications
     973          //
     974          this.cbxApplications.DisplayMember = "Name";
     975          this.cbxApplications.FormattingEnabled = true;
     976          this.cbxApplications.Location = new System.Drawing.Point(110, 6);
     977          this.cbxApplications.Name = "cbxApplications";
     978          this.cbxApplications.Size = new System.Drawing.Size(234, 21);
     979          this.cbxApplications.TabIndex = 1;
     980          this.cbxApplications.ValueMember = "Name";
     981          this.cbxApplications.SelectedIndexChanged += new System.EventHandler(this.cbxApplications_SelectedIndexChanged);
     982          //
     983          // label1
     984          //
     985          this.label1.AutoSize = true;
     986          this.label1.Location = new System.Drawing.Point(12, 9);
     987          this.label1.Name = "label1";
     988          this.label1.Size = new System.Drawing.Size(92, 13);
     989          this.label1.TabIndex = 2;
     990          this.label1.Text = "Select Application";
     991          //
     992          // panel2
     993          //
     994          this.panel2.Controls.Add(this.cbxApplications);
     995          this.panel2.Controls.Add(this.label1);
     996          this.panel2.Dock = System.Windows.Forms.DockStyle.Top;
     997          this.panel2.Location = new System.Drawing.Point(0, 0);
     998          this.panel2.Name = "panel2";
     999          this.panel2.Size = new System.Drawing.Size(1288, 33);
     1000          this.panel2.TabIndex = 3;
     1001          //
     1002          // gbResetPassword
     1003          //
     1004          this.gbResetPassword.Controls.Add(label2);
     1005          this.gbResetPassword.Controls.Add(this.tbPassword);
     1006          this.gbResetPassword.Controls.Add(this.btnResetPassword);
     1007          this.gbResetPassword.Location = new System.Drawing.Point(933, 94);
     1008          this.gbResetPassword.Name = "gbResetPassword";
     1009          this.gbResetPassword.Size = new System.Drawing.Size(308, 219);
     1010          this.gbResetPassword.TabIndex = 21;
     1011          this.gbResetPassword.TabStop = false;
     1012          this.gbResetPassword.Text = "Reset Password";
     1013          //
     1014          // btnResetPassword
     1015          //
     1016          this.btnResetPassword.Location = new System.Drawing.Point(52, 91);
     1017          this.btnResetPassword.Name = "btnResetPassword";
     1018          this.btnResetPassword.Size = new System.Drawing.Size(126, 23);
     1019          this.btnResetPassword.TabIndex = 0;
     1020          this.btnResetPassword.Text = "Reset Password";
     1021          this.btnResetPassword.UseVisualStyleBackColor = true;
     1022          this.btnResetPassword.Click += new System.EventHandler(this.btnResetPassword_Click);
     1023          //
     1024          // tbPassword
     1025          //
     1026          this.tbPassword.Location = new System.Drawing.Point(52, 51);
     1027          this.tbPassword.Name = "tbPassword";
     1028          this.tbPassword.Size = new System.Drawing.Size(100, 20);
     1029          this.tbPassword.TabIndex = 1;
     1030          //
     1031          // label2
     1032          //
     1033          label2.AutoSize = true;
     1034          label2.Location = new System.Drawing.Point(49, 35);
     1035          label2.Name = "label2";
     1036          label2.Size = new System.Drawing.Size(81, 13);
     1037          label2.TabIndex = 4;
     1038          label2.Text = "New Password:";
     1039          //
     1040          // UserManagement
     1041          //
     1042          this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
     1043          this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
     1044          this.ClientSize = new System.Drawing.Size(1288, 680);
     1045          this.Controls.Add(this.tcMain);
     1046          this.Controls.Add(this.panel2);
     1047          this.Name = "UserManagement";
     1048          this.Text = "UserManagement";
     1049          this.tcMain.ResumeLayout(false);
     1050          this.tpApplications.ResumeLayout(false);
     1051          this.tpApplications.PerformLayout();
     1052          ((System.ComponentModel.ISupportInitialize)(this.dgvApplications)).EndInit();
     1053          ((System.ComponentModel.ISupportInitialize)(this.applicationBindingSource)).EndInit();
     1054          this.panel1.ResumeLayout(false);
     1055          this.panel1.PerformLayout();
     1056          this.statusStrip1.ResumeLayout(false);
     1057          this.statusStrip1.PerformLayout();
     1058          this.toolStrip1.ResumeLayout(false);
     1059          this.toolStrip1.PerformLayout();
     1060          this.tpUsers.ResumeLayout(false);
     1061          this.tpUsers.PerformLayout();
     1062          ((System.ComponentModel.ISupportInitialize)(this.dgvUsers)).EndInit();
     1063          ((System.ComponentModel.ISupportInitialize)(this.userBindingSource2)).EndInit();
     1064          this.toolStrip2.ResumeLayout(false);
     1065          this.toolStrip2.PerformLayout();
     1066          this.panel3.ResumeLayout(false);
     1067          this.panel3.PerformLayout();
     1068          this.tableLayoutPanel1.ResumeLayout(false);
     1069          this.panel4.ResumeLayout(false);
     1070          this.panel4.PerformLayout();
     1071          ((System.ComponentModel.ISupportInitialize)(this.dgvUserRoles)).EndInit();
     1072          ((System.ComponentModel.ISupportInitialize)(this.roleBindingSource1)).EndInit();
     1073          this.toolStrip3.ResumeLayout(false);
     1074          this.toolStrip3.PerformLayout();
     1075          this.panel5.ResumeLayout(false);
     1076          this.panel5.PerformLayout();
     1077          ((System.ComponentModel.ISupportInitialize)(this.dgvUserRolesAll)).EndInit();
     1078          ((System.ComponentModel.ISupportInitialize)(this.roleBindingSource2)).EndInit();
     1079          this.toolStrip4.ResumeLayout(false);
     1080          this.toolStrip4.PerformLayout();
     1081          this.statusStrip2.ResumeLayout(false);
     1082          this.statusStrip2.PerformLayout();
     1083          this.tpRoles.ResumeLayout(false);
     1084          this.tpRoles.PerformLayout();
     1085          ((System.ComponentModel.ISupportInitialize)(this.dgvRoles)).EndInit();
     1086          ((System.ComponentModel.ISupportInitialize)(this.roleBindingSource)).EndInit();
     1087          this.panel6.ResumeLayout(false);
     1088          this.panel6.PerformLayout();
     1089          this.tableLayoutPanel2.ResumeLayout(false);
     1090          this.panel8.ResumeLayout(false);
     1091          this.panel8.PerformLayout();
     1092          ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsersAll)).EndInit();
     1093          ((System.ComponentModel.ISupportInitialize)(this.userBindingSource)).EndInit();
     1094          this.toolStrip7.ResumeLayout(false);
     1095          this.toolStrip7.PerformLayout();
     1096          this.panel7.ResumeLayout(false);
     1097          this.panel7.PerformLayout();
     1098          ((System.ComponentModel.ISupportInitialize)(this.dgvRoleUsers)).EndInit();
     1099          ((System.ComponentModel.ISupportInitialize)(this.userBindingSource1)).EndInit();
     1100          this.toolStrip6.ResumeLayout(false);
     1101          this.toolStrip6.PerformLayout();
     1102          this.statusStrip3.ResumeLayout(false);
     1103          this.statusStrip3.PerformLayout();
     1104          this.toolStrip5.ResumeLayout(false);
     1105          this.toolStrip5.PerformLayout();
     1106          this.panel2.ResumeLayout(false);
     1107          this.panel2.PerformLayout();
     1108          this.gbResetPassword.ResumeLayout(false);
     1109          this.gbResetPassword.PerformLayout();
     1110          this.ResumeLayout(false);
    9621111
    9631112        }
     
    9681117        private System.Windows.Forms.TabPage tpApplications;
    9691118        private System.Windows.Forms.DataGridView dgvApplications;
    970         private System.Windows.Forms.BindingSource bsApplications;
    9711119        private System.Windows.Forms.TabPage tpUsers;
    9721120        private System.Windows.Forms.DataGridView dgvUsers;
    973         private System.Windows.Forms.BindingSource bsUsers;
    9741121        private System.Windows.Forms.TabPage tpRoles;
    9751122        private System.Windows.Forms.DataGridView dgvRoles;
    976         private System.Windows.Forms.BindingSource bsRoles;
    9771123        private System.Windows.Forms.ComboBox cbxApplications;
     1124        private System.Windows.Forms.DataGridViewTextBoxColumn loweredApplicationNameDataGridViewTextBoxColumn;
     1125        private System.Windows.Forms.DataGridViewTextBoxColumn loweredRoleNameDataGridViewTextBoxColumn;
     1126        private System.Windows.Forms.TextBox tbApplicationDescription;
     1127        private System.Windows.Forms.TextBox tbApplicationName;
     1128        private System.Windows.Forms.TextBox tbUserName;
     1129        private System.Windows.Forms.TextBox tbUserEmail;
     1130        private System.Windows.Forms.TextBox tbUserComment;
     1131        private System.Windows.Forms.TextBox tbRoleDescription;
     1132        private System.Windows.Forms.TextBox tbRoleName;
     1133        private System.Windows.Forms.DataGridView dgvUserRolesAll;
     1134        private System.Windows.Forms.DataGridView dgvRoleUsersAll;
     1135        private System.Windows.Forms.DataGridView dgvRoleUsers;
     1136        private System.Windows.Forms.Label label1;
     1137        private System.Windows.Forms.Label label3;
     1138        private System.Windows.Forms.ToolStrip toolStrip1;
     1139        private System.Windows.Forms.ToolStripButton tspNewApplication;
     1140        private System.Windows.Forms.ToolStripButton tspDeleteApplication;
     1141        private System.Windows.Forms.ToolStripButton tspSaveApplication;
     1142        private System.Windows.Forms.StatusStrip statusStrip1;
     1143        private System.Windows.Forms.ToolStripStatusLabel tssApplicationStatus;
     1144        private System.Windows.Forms.BindingSource applicationBindingSource;
     1145        private System.Windows.Forms.Panel panel1;
     1146        private System.Windows.Forms.ToolStrip toolStrip2;
     1147        private System.Windows.Forms.Panel panel3;
     1148        private System.Windows.Forms.StatusStrip statusStrip2;
     1149        private System.Windows.Forms.ToolStripStatusLabel tssStatusUser;
     1150        private System.Windows.Forms.Panel panel2;
     1151        private System.Windows.Forms.ToolStripButton tsbNewUser;
     1152        private System.Windows.Forms.ToolStripButton tsbDeleteUser;
     1153        private System.Windows.Forms.ToolStripButton tsbSaveUser;
     1154        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
     1155        private System.Windows.Forms.Panel panel4;
     1156        private System.Windows.Forms.ToolStrip toolStrip3;
     1157        private System.Windows.Forms.ToolStripButton tsbRemoveRoleFromUser;
     1158        private System.Windows.Forms.DataGridView dgvUserRoles;
     1159        private System.Windows.Forms.Panel panel5;
     1160        private System.Windows.Forms.ToolStrip toolStrip4;
     1161        private System.Windows.Forms.ToolStripButton tsbAddRoleToUser;
     1162        private System.Windows.Forms.ToolStrip toolStrip5;
     1163        private System.Windows.Forms.ToolStripButton tspNewRole;
     1164        private System.Windows.Forms.ToolStripButton tsbDeleteRole;
     1165        private System.Windows.Forms.ToolStripButton tsbSaveRole;
     1166        private System.Windows.Forms.StatusStrip statusStrip3;
     1167        private System.Windows.Forms.ToolStripStatusLabel tssStatusRole;
     1168        private System.Windows.Forms.Panel panel7;
     1169        private System.Windows.Forms.ToolStrip toolStrip6;
     1170        private System.Windows.Forms.Panel panel6;
     1171        private System.Windows.Forms.ToolStripButton tsbRemoveUserFromRole;
     1172        private System.Windows.Forms.Panel panel8;
     1173        private System.Windows.Forms.ToolStrip toolStrip7;
     1174        private System.Windows.Forms.ToolStripButton tsbAddUserToRole;
     1175        private System.Windows.Forms.DataGridViewTextBoxColumn idDataGridViewTextBoxColumn;
     1176        private System.Windows.Forms.DataGridViewTextBoxColumn colName;
     1177        private System.Windows.Forms.DataGridViewTextBoxColumn colDescription;
     1178        private System.Windows.Forms.DataGridViewTextBoxColumn idDataGridViewTextBoxColumn2;
    9781179        private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn;
    979         private System.Windows.Forms.DataGridViewTextBoxColumn loweredApplicationNameDataGridViewTextBoxColumn;
     1180        private System.Windows.Forms.DataGridViewTextBoxColumn emailDataGridViewTextBoxColumn;
    9801181        private System.Windows.Forms.DataGridViewTextBoxColumn descriptionDataGridViewTextBoxColumn;
     1182        private System.Windows.Forms.BindingSource userBindingSource2;
     1183        private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn4;
     1184        private System.Windows.Forms.BindingSource roleBindingSource1;
     1185        private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn5;
     1186        private System.Windows.Forms.BindingSource roleBindingSource2;
     1187        private System.Windows.Forms.DataGridViewTextBoxColumn idDataGridViewTextBoxColumn1;
     1188        private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn3;
     1189        private System.Windows.Forms.DataGridViewTextBoxColumn descriptionDataGridViewTextBoxColumn1;
     1190        private System.Windows.Forms.BindingSource roleBindingSource;
     1191        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
    9811192        private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn1;
    982         private System.Windows.Forms.DataGridViewTextBoxColumn emailDataGridViewTextBoxColumn;
    983         private System.Windows.Forms.DataGridViewTextBoxColumn commentDataGridViewTextBoxColumn;
    984         private System.Windows.Forms.DataGridViewTextBoxColumn lastLoginDateDataGridViewTextBoxColumn;
    985         private System.Windows.Forms.DataGridViewTextBoxColumn lastPasswordChangeDateDataGridViewTextBoxColumn;
    986         private System.Windows.Forms.DataGridViewTextBoxColumn lastLockoutDateDataGridViewTextBoxColumn;
    987         private System.Windows.Forms.DataGridViewTextBoxColumn lastActivityDateDataGridViewTextBoxColumn;
    988         private System.Windows.Forms.DataGridViewCheckBoxColumn isLookedOutDataGridViewCheckBoxColumn;
    989         private System.Windows.Forms.DataGridViewCheckBoxColumn isApprovedDataGridViewCheckBoxColumn;
     1193        private System.Windows.Forms.BindingSource userBindingSource;
    9901194        private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn2;
    991         private System.Windows.Forms.DataGridViewTextBoxColumn loweredRoleNameDataGridViewTextBoxColumn;
    992         private System.Windows.Forms.DataGridViewTextBoxColumn descriptionDataGridViewTextBoxColumn1;
    993         private System.Windows.Forms.Button btnDeleteApplication;
    994         private System.Windows.Forms.TextBox descriptionTextBox;
    995         private System.Windows.Forms.TextBox loweredApplicationNameTextBox;
    996         private System.Windows.Forms.TextBox nameTextBox;
    997         private System.Windows.Forms.Button btnNewApplication;
    998         private System.Windows.Forms.Button btnUpdateApplication;
    999         private System.Windows.Forms.TextBox passwordSaltTextBox;
    1000         private System.Windows.Forms.TextBox passwordTextBox;
    1001         private System.Windows.Forms.TextBox nameTextBox1;
    1002         private System.Windows.Forms.CheckBox isApprovedCheckBox;
    1003         private System.Windows.Forms.TextBox emailTextBox;
    1004         private System.Windows.Forms.TextBox commentTextBox;
    1005         private System.Windows.Forms.TextBox descriptionTextBox1;
    1006         private System.Windows.Forms.TextBox loweredRoleNameTextBox;
    1007         private System.Windows.Forms.TextBox nameTextBox2;
    1008         private System.Windows.Forms.Button btnUpdateRole;
    1009         private System.Windows.Forms.Button btnDeleteRole;
    1010         private System.Windows.Forms.Button btnNewRole;
    1011         private System.Windows.Forms.Button btnUpdateUser;
    1012         private System.Windows.Forms.Button btnDeleteUser;
    1013         private System.Windows.Forms.Button btnNewUser;
    1014         private System.Windows.Forms.TabControl tcUser;
    1015         private System.Windows.Forms.TabPage tabPage1;
    1016         private System.Windows.Forms.TabPage tabPage2;
    1017         private System.Windows.Forms.Button btnAddRoleToUser;
    1018         private System.Windows.Forms.Button btnRemoveRoleFromUser;
    1019         private System.Windows.Forms.DataGridView dgvUserRolesAll;
    1020         private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn4;
    1021         private System.Windows.Forms.DataGridView dgvUserRoles;
    1022         private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn3;
    1023         private System.Windows.Forms.BindingSource bsUserRoles;
    1024         private System.Windows.Forms.TabControl tcRole;
    1025         private System.Windows.Forms.TabPage tabPage3;
    1026         private System.Windows.Forms.TabPage tabPage4;
    1027         private System.Windows.Forms.BindingSource bsRoleUsers;
    1028         private System.Windows.Forms.Button btnAddUserToRole;
    1029         private System.Windows.Forms.Button btnRemoveUserFromRole;
    1030         private System.Windows.Forms.DataGridView dgvRoleUsersAll;
    1031         private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn6;
    1032         private System.Windows.Forms.DataGridView dgvRoleUsers;
    1033         private System.Windows.Forms.DataGridViewTextBoxColumn nameDataGridViewTextBoxColumn5;
    1034         private System.Windows.Forms.BindingSource bsApplicationsCombo;
     1195        private System.Windows.Forms.BindingSource userBindingSource1;
     1196        private System.Windows.Forms.GroupBox gbResetPassword;
     1197        private System.Windows.Forms.TextBox tbPassword;
     1198        private System.Windows.Forms.Button btnResetPassword;
    10351199    }
    10361200}
  • branches/UserManagement/HeuristicLab.Services.Authentication.TestClient2/UserManagement.cs

    r4979 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using System.ComponentModel;
     
    828using System.Windows.Forms;
    929
    10 namespace HeuristicLab.Services.Authentication.TestClient2
    11 {
    12     public partial class UserManagement : Form
    13     {
    14 
    15         private AuthenticationService auth;
    16         private DataTransfer.Application currentApplication;
    17 
    18         private DataTransfer.Application selectedApplication;
    19         private DataTransfer.User selectedUser;
    20         private DataTransfer.Role selectedRole;
    21 
    22         public UserManagement()
    23         {
    24             InitializeComponent();
    25             Initialize();
    26         }
    27 
    28         private void Initialize()
    29         {
    30             auth = new AuthenticationService();
    31             bsApplications.DataSource = auth.GetApplications();
    32             bsApplicationsCombo.DataSource = auth.GetApplications();
    33             RefreshLists();
    34         }
    35 
    36         private void RefreshLists()
    37         {
    38             if (currentApplication != null)
    39             {
    40                 bsRoles.DataSource = auth.GetRoles(currentApplication.Id);
    41                 bsUsers.DataSource = auth.GetUsers(currentApplication.Id);
    42             }
    43         }
    44 
    45         private void cbxApplications_SelectedIndexChanged(object sender, EventArgs e)
    46         {
    47             this.currentApplication = (HeuristicLab.Services.Authentication.DataTransfer.Application)cbxApplications.SelectedItem;
    48             RefreshLists();
    49         }
    50 
    51         private void btnNewApplication_Click(object sender, EventArgs e)
    52         {
    53             // new
    54            //DataTransfer.Application  = new DataTransfer.Application();
    55             selectedApplication = (DataTransfer.Application)this.bsApplications.AddNew();
    56            
    57         }
    58 
    59         private void btnDeleteApplication_Click(object sender, EventArgs e)
    60         {
    61             if (this.dgvApplications.SelectedRows.Count > 0)
    62             {
    63                 selectedApplication= ( DataTransfer.Application)this.dgvApplications.SelectedRows[0].DataBoundItem;
    64                 if (selectedApplication != null)
    65                 {
    66                     auth.DeleteApplication(selectedApplication.Id);
    67                     RefreshLists();
    68                 }
    69             }
    70         }
    71 
    72         private void btnUpdateApplication_Click(object sender, EventArgs e)
    73         {
    74            
    75                 if (selectedApplication != null)
    76                 {
    77                     if (selectedApplication.Id.Equals(Guid.Empty))
    78                     {
    79                         // insert
    80                         selectedApplication.Id = Guid.NewGuid();
    81                         auth.AddApplication(selectedApplication);
    82                     }
    83                     else
    84                     {
    85                         // update
    86                         auth.UpdateApplication(selectedApplication);
    87                     }
    88                 }
    89            
    90            
    91         }
    92 
    93         private void dgvApplications_SelectionChanged(object sender, EventArgs e)
    94         {
    95             if (dgvApplications.SelectedRows.Count > 0)
    96             {
    97                 selectedApplication = (DataTransfer.Application)dgvApplications.SelectedRows[0].DataBoundItem;
    98             }
    99         }
    100 
    101         private void dgvUsers_SelectionChanged(object sender, EventArgs e)
    102         {
    103             if (dgvUsers.SelectedRows.Count > 0)
    104             {
    105                 selectedUser = (DataTransfer.User)dgvUsers.SelectedRows[0].DataBoundItem;
    106                 RefreshUserRolesList();
    107             }
    108         }
    109 
    110         private void dgvRoles_SelectionChanged(object sender, EventArgs e)
    111         {
    112             if (dgvRoles.SelectedRows.Count > 0)
    113             {
    114                 selectedRole = (DataTransfer.Role)dgvRoles.SelectedRows[0].DataBoundItem;
    115                 RefreshRoleUsersList();
    116             }
    117         }
    118 
    119         private void btnUpdateRole_Click(object sender, EventArgs e)
    120         {
    121             if (selectedRole != null)
    122             {
    123                 if (selectedRole.Id.Equals(Guid.Empty))
    124                 {
    125                     // insert
    126                     selectedRole.Id = Guid.NewGuid();
    127                     selectedRole.ApplicationId = currentApplication.Id;
    128 
    129                     auth.AddRole(selectedRole);
    130                 }
    131                 else
    132                 {
    133                     // update
    134                     auth.UpdateRole(selectedRole);
    135                 }
    136             }
    137         }
    138 
    139         private void btnNewRole_Click(object sender, EventArgs e)
    140         {
    141             selectedRole = (DataTransfer.Role)this.bsRoles.AddNew();
    142         }
    143 
    144         private void btnDeleteRole_Click(object sender, EventArgs e)
    145         {
    146             if (this.dgvRoles.SelectedRows.Count > 0)
    147             {
    148                 selectedRole = (DataTransfer.Role)this.dgvRoles.SelectedRows[0].DataBoundItem;
    149                 if (selectedRole != null)
    150                 {
    151                     auth.DeleteRole(selectedRole.Id);
    152                     RefreshLists();
    153                 }
    154             }
    155         }
    156 
    157         private void btnNewUser_Click(object sender, EventArgs e)
    158         {
    159             selectedUser = (DataTransfer.User)this.bsUsers.AddNew();
    160         }
    161 
    162         private void btnDeleteUser_Click(object sender, EventArgs e)
    163         {
    164             if (this.dgvUsers.SelectedRows.Count > 0)
    165             {
    166                 selectedUser = (DataTransfer.User)this.dgvUsers.SelectedRows[0].DataBoundItem;
    167                 if (selectedUser != null)
    168                 {
    169                     auth.DeleteUser(selectedUser.Id);
    170                     RefreshLists();
    171                 }
    172             }
    173         }
    174 
    175         private void btnUpdateUser_Click(object sender, EventArgs e)
    176         {
    177             if (selectedUser != null)
    178             {
    179                 if (selectedUser.Id.Equals(Guid.Empty))
    180                 {
    181                     // insert
    182                     selectedUser.Id = Guid.NewGuid();
    183                     selectedUser.ApplicationId = currentApplication.Id;
    184 
    185                     auth.AddUser(selectedUser);
    186                 }
    187                 else
    188                 {
    189                     // update
    190                     auth.UpdateUser(selectedUser);
    191                 }
    192             }
    193         }
    194 
    195         private void btnRemoveRoleFromUser_Click(object sender, EventArgs e)
    196         {
    197             if (this.dgvUserRoles.SelectedRows.Count > 0)
    198             {
    199 
    200                 DataTransfer.Role role = (DataTransfer.Role)this.dgvUserRoles.SelectedRows[0].DataBoundItem;
    201                 if (role != null)
    202                 {
    203                     auth.RemoveUserFromRole(role.Id, selectedUser.Id);
    204                     RefreshUserRolesList();
    205                 }
    206             }
    207         }
    208 
    209         private void btnAddRoleToUser_Click(object sender, EventArgs e)
    210         {
    211             if (this.dgvUserRolesAll.SelectedRows.Count > 0)
    212             {
    213                 DataTransfer.Role role = (DataTransfer.Role)this.dgvUserRolesAll.SelectedRows[0].DataBoundItem;
    214                 if (role != null)
    215                 {
    216                     auth.AddUserToRole( role.Id,selectedUser.Id);
    217                     RefreshUserRolesList();
    218                 }
    219             }
    220         }
    221 
    222         private void RefreshUserRolesList()
    223         {
    224             bsUserRoles.DataSource = auth.GetRolesForUser(selectedUser.Id);
    225         }
    226 
    227         private void RefreshRoleUsersList()
    228         {
    229             bsRoleUsers.DataSource = auth.GetUsersInRole(selectedRole.Id);
    230         }
    231 
    232         private void btnRemoveUserFromRole_Click(object sender, EventArgs e)
    233         {
    234             if (this.dgvRoleUsers.SelectedRows.Count > 0)
    235             {
    236 
    237                 DataTransfer.User user = (DataTransfer.User)this.dgvRoleUsers.SelectedRows[0].DataBoundItem;
    238                 if (user != null)
    239                 {
    240                     auth.RemoveUserFromRole(selectedRole.Id, user.Id);
    241                     RefreshRoleUsersList();
    242                 }
    243             }
    244         }
    245 
    246         private void btnAddUserToRole_Click(object sender, EventArgs e)
    247         {
    248             if (this.dgvRoleUsersAll.SelectedRows.Count > 0)
    249             {
    250                 DataTransfer.User user = (DataTransfer.User)this.dgvRoleUsersAll.SelectedRows[0].DataBoundItem;
    251                 if (user != null)
    252                 {
    253                     auth.AddUserToRole(selectedRole.Id, user.Id);
    254                     RefreshRoleUsersList();
    255                 }
    256             }
    257         }
    258 
    259  
    260     }
     30namespace HeuristicLab.Services.Authentication {
     31  public partial class UserManagement : Form {
     32
     33    private Application currentApplication;
     34    private Application selectedApplication;
     35    private User selectedUser;
     36    private Role selectedRole;
     37
     38    private List<Application> applications;
     39    private List<User> users;
     40    private List<Role> roles;
     41
     42
     43    public UserManagement() {
     44      InitializeComponent();
     45      Initialize();
     46    }
     47
     48
     49    private void Initialize() {
     50      AuthenticationClient.Instance.Refreshed += new EventHandler(Instance_Refreshed);
     51      cbxApplications.DataSource = AuthenticationClient.Instance.GetApplications();
     52    }
     53
     54
     55    void Instance_Refreshed(object sender, EventArgs e) {
     56
     57      if (InvokeRequired) {
     58        Invoke(new EventHandler(Instance_Refreshed), sender, e);
     59      } else {
     60
     61        applications = AuthenticationClient.Instance.Applications.ToList();
     62        dgvApplications.DataSource = applications;
     63
     64        roles = AuthenticationClient.Instance.Roles.ToList();
     65        dgvRoles.DataSource = roles;
     66
     67        users = AuthenticationClient.Instance.Users.ToList();
     68        dgvUsers.DataSource = users;
     69      }
     70
     71    }
     72
     73
     74    private void RefreshApplications() {
     75      if (currentApplication != null) {
     76        AuthenticationClient.Instance.Refresh(currentApplication.Id);
     77      }
     78    }
     79
     80
     81
     82    private void RefreshUsersAndRoles() {
     83
     84
     85      if (currentApplication != null) {
     86        AuthenticationClient.Instance.Refresh(currentApplication.Id);
     87      }
     88    }
     89
     90
     91
     92    private void cbxApplications_SelectedIndexChanged(object sender, EventArgs e) {
     93      this.currentApplication = (HeuristicLab.Services.Authentication.Application)cbxApplications.SelectedItem;
     94      if (currentApplication != null) {
     95        AuthenticationClient.Instance.Refresh(currentApplication.Id);
     96      }
     97    }
     98
     99
     100
     101
     102    private void dgvApplications_SelectionChanged(object sender, EventArgs e) {
     103      if (dgvApplications.SelectedRows.Count > 0) {
     104        selectedApplication = (HeuristicLab.Services.Authentication.Application)dgvApplications.SelectedRows[0].DataBoundItem;
     105
     106        if (selectedApplication != null) {
     107          tbApplicationName.Text = selectedApplication.Name;
     108          tbApplicationDescription.Text = selectedApplication.Description;
     109          selectedApplication.PropertyChanged += new PropertyChangedEventHandler(selectedApplication_PropertyChanged);
     110        }
     111      }
     112    }
     113
     114
     115
     116    void selectedApplication_PropertyChanged(object sender, PropertyChangedEventArgs e) {
     117      if (selectedApplication.Modified) {
     118        tssApplicationStatus.Text = "modified";
     119      } else {
     120        tssApplicationStatus.Text = "";
     121      }
     122    }
     123
     124
     125
     126
     127    private void dgvUsers_SelectionChanged(object sender, EventArgs e) {
     128      if (dgvUsers.SelectedRows.Count > 0) {
     129        selectedUser = (HeuristicLab.Services.Authentication.User)dgvUsers.SelectedRows[0].DataBoundItem;
     130
     131        if (selectedUser != null) {
     132          tbUserComment.Text = selectedUser.Description;
     133          tbUserEmail.Text = selectedUser.Email;
     134          tbUserName.Text = selectedUser.Name;
     135          selectedUser.PropertyChanged += new PropertyChangedEventHandler(selectedUser_PropertyChanged);
     136          RefreshUserRolesList();
     137        }
     138        RefreshUserRolesList();
     139      }
     140    }
     141
     142    void selectedUser_PropertyChanged(object sender, PropertyChangedEventArgs e) {
     143      if (selectedUser.Modified) {
     144        tssStatusUser.Text = "modified";
     145      } else {
     146        tssStatusUser.Text = "";
     147      }
     148    }
     149
     150
     151
     152    private void dgvRoles_SelectionChanged(object sender, EventArgs e) {
     153      if (dgvRoles.SelectedRows.Count > 0) {
     154        selectedRole = (HeuristicLab.Services.Authentication.Role)dgvRoles.SelectedRows[0].DataBoundItem;
     155
     156        if (selectedRole != null) {
     157          tbRoleName.Text = selectedRole.Name;
     158          tbRoleDescription.Text = selectedRole.Description;
     159          selectedRole.PropertyChanged += new PropertyChangedEventHandler(selectedRole_PropertyChanged);
     160        }
     161
     162        RefreshRoleUsersList();
     163      }
     164    }
     165
     166    void selectedRole_PropertyChanged(object sender, PropertyChangedEventArgs e) {
     167      if (selectedRole.Modified) {
     168        tssStatusRole.Text = "modified";
     169      } else {
     170        tssStatusRole.Text = "";
     171      }
     172    }
     173
     174
     175
     176    private void RefreshUserRolesList() {
     177      IEnumerable<Guid> guidList = AuthenticationClient.Instance.GetRolesForUser(selectedUser.Id);
     178      List<Role> rolesForUser = new List<Role>();
     179      if (guidList != null) {
     180        foreach (Guid g in guidList) {
     181          rolesForUser.Add(AuthenticationClient.Instance.GetRole(g));
     182        }
     183      }
     184      dgvUserRoles.DataSource = rolesForUser;
     185      dgvUserRolesAll.DataSource = AuthenticationClient.Instance.Roles;
     186
     187    }
     188
     189
     190
     191    private void RefreshRoleUsersList() {
     192
     193      IEnumerable<Guid> guidList = AuthenticationClient.Instance.GetUsersInRole(selectedRole.Id);
     194
     195      List<User> usersForRole = new List<User>();
     196
     197      if (guidList != null) {
     198        foreach (Guid g in guidList) {
     199          usersForRole.Add(AuthenticationClient.Instance.GetUser(g));
     200        }
     201      }
     202
     203      dgvRoleUsers.DataSource = usersForRole;
     204      dgvRoleUsersAll.DataSource = AuthenticationClient.Instance.Users;
     205    }
     206
     207
     208    private void tbApplicationName_TextChanged(object sender, EventArgs e) {
     209      if (selectedApplication != null) {
     210        selectedApplication.Name = tbApplicationName.Text;
     211      }
     212    }
     213
     214    private void tbApplicationDescription_TextChanged(object sender, EventArgs e) {
     215      if (selectedApplication != null) {
     216        selectedApplication.Description = tbApplicationDescription.Text;
     217      }
     218    }
     219
     220    private void tbRoleName_TextChanged(object sender, EventArgs e) {
     221      if (selectedRole != null) {
     222        selectedRole.Name = tbRoleName.Text;
     223      }
     224    }
     225
     226    private void tbRoleDescription_TextChanged(object sender, EventArgs e) {
     227      if (selectedRole != null) {
     228        selectedRole.Description = tbRoleDescription.Text;
     229      }
     230    }
     231
     232    private void tbUserComment_TextChanged(object sender, EventArgs e) {
     233      if (selectedUser != null) {
     234        selectedUser.Description = tbUserComment.Text;
     235      }
     236    }
     237
     238    private void tbUserName_TextChanged(object sender, EventArgs e) {
     239      if (selectedUser != null) {
     240        selectedUser.Name = tbUserName.Text;
     241      }
     242    }
     243
     244    private void tbUserEmail_TextChanged(object sender, EventArgs e) {
     245      if (selectedUser != null) {
     246        selectedUser.Email = tbUserEmail.Text;
     247      }
     248    }
     249
     250
     251    private void tspNewApplication_Click(object sender, EventArgs e) {
     252      selectedApplication = new Application();
     253      tbApplicationDescription.Text = "";
     254      tbApplicationName.Text = "";
     255    }
     256
     257    private void tspDeleteApplication_Click(object sender, EventArgs e) {
     258      if (this.dgvApplications.SelectedRows.Count > 0) {
     259        selectedApplication = (HeuristicLab.Services.Authentication.Application)this.dgvApplications.SelectedRows[0].DataBoundItem;
     260        if (selectedApplication != null) {
     261          AuthenticationClient.Instance.Applications.Remove(selectedApplication);
     262          RefreshApplications();
     263        }
     264      }
     265    }
     266
     267    private void tspSaveApplication_Click(object sender, EventArgs e) {
     268      if (selectedApplication != null) {
     269        selectedApplication.Store();
     270        if (currentApplication != null) {
     271          AuthenticationClient.Instance.Refresh(currentApplication.Id);
     272        }
     273      }
     274
     275    }
     276
     277    private void tsbNewUser_Click(object sender, EventArgs e) {
     278      selectedUser = new User();
     279      selectedUser.ApplicationId = currentApplication.Id;
     280      selectedUser.CreateDate = DateTime.Now;
     281      selectedUser.LastActivityDate = DateTime.Now;
     282      selectedUser.LastLoginDate = DateTime.Now;
     283      selectedUser.LastLockoutDate = DateTime.Now;
     284      selectedUser.LastPasswordChangeDate = DateTime.Now;
     285
     286      tbUserComment.Text = "";
     287      tbUserEmail.Text = "";
     288      tbUserName.Text = "";
     289    }
     290
     291    private void tsbDeleteUser_Click(object sender, EventArgs e) {
     292      if (this.dgvUsers.SelectedRows.Count > 0) {
     293        selectedUser = (HeuristicLab.Services.Authentication.User)this.dgvUsers.SelectedRows[0].DataBoundItem;
     294        if (selectedUser != null) {
     295          AuthenticationClient.Instance.Users.Remove(selectedUser);
     296          RefreshUsersAndRoles();
     297        }
     298      }
     299    }
     300
     301    private void tsbSaveUser_Click(object sender, EventArgs e) {
     302      if (selectedUser != null) {
     303        selectedUser.Store();
     304        if (currentApplication != null) {
     305          AuthenticationClient.Instance.Refresh(currentApplication.Id);
     306        }
     307      }
     308    }
     309
     310    private void tsbRemoveRoleFromUser_Click(object sender, EventArgs e) {
     311      if (this.dgvUserRoles.SelectedRows.Count > 0) {
     312
     313        HeuristicLab.Services.Authentication.Role role = (HeuristicLab.Services.Authentication.Role)this.dgvUserRoles.SelectedRows[0].DataBoundItem;
     314        if (role != null) {
     315          AuthenticationClient.Instance.RemoveUserFromRole(role.Id, selectedUser.Id);
     316          RefreshUserRolesList();
     317        }
     318      }
     319    }
     320
     321    private void tsbAddRoleToUser_Click(object sender, EventArgs e) {
     322      if (this.dgvUserRolesAll.SelectedRows.Count > 0) {
     323        HeuristicLab.Services.Authentication.Role role = (HeuristicLab.Services.Authentication.Role)this.dgvUserRolesAll.SelectedRows[0].DataBoundItem;
     324        if (role != null) {
     325          if (!AuthenticationClient.Instance.IsUserInRole(selectedUser.Id, role.Id)) {
     326            AuthenticationClient.Instance.AddUserToRole(role.Id, selectedUser.Id);
     327            RefreshUserRolesList();
     328          }
     329        }
     330      }
     331    }
     332
     333    private void tspNewRole_Click(object sender, EventArgs e) {
     334      selectedRole = new Role();
     335      selectedRole.ApplicationId = currentApplication.Id;
     336      tbRoleDescription.Text = "";
     337      tbRoleName.Text = "";
     338    }
     339
     340
     341    private void tsbDeleteRole_Click(object sender, EventArgs e) {
     342      if (this.dgvRoles.SelectedRows.Count > 0) {
     343        selectedRole = (HeuristicLab.Services.Authentication.Role)this.dgvRoles.SelectedRows[0].DataBoundItem;
     344        if (selectedRole != null) {
     345          AuthenticationClient.Instance.Roles.Remove(selectedRole);
     346          RefreshUsersAndRoles();
     347        }
     348      }
     349    }
     350
     351
     352    private void tsbSaveRole_Click(object sender, EventArgs e) {
     353      if (selectedRole != null) {
     354        selectedRole.Store();
     355        if (currentApplication != null) {
     356          AuthenticationClient.Instance.Refresh(currentApplication.Id);
     357        }
     358      }
     359    }
     360
     361    private void tsbRemoveUserFromRole_Click(object sender, EventArgs e) {
     362      if (this.dgvRoleUsers.SelectedRows.Count > 0) {
     363
     364        HeuristicLab.Services.Authentication.User user = (HeuristicLab.Services.Authentication.User)this.dgvRoleUsers.SelectedRows[0].DataBoundItem;
     365        if (user != null) {
     366          AuthenticationClient.Instance.RemoveUserFromRole(selectedRole.Id, user.Id);
     367          RefreshRoleUsersList();
     368        }
     369      }
     370    }
     371
     372    private void tsbAddUserToRole_Click(object sender, EventArgs e) {
     373      if (this.dgvRoleUsersAll.SelectedRows.Count > 0) {
     374        HeuristicLab.Services.Authentication.User user = (HeuristicLab.Services.Authentication.User)this.dgvRoleUsersAll.SelectedRows[0].DataBoundItem;
     375        if (user != null) {
     376          if (!AuthenticationClient.Instance.IsUserInRole(user.Id, selectedRole.Id)) {
     377            AuthenticationClient.Instance.AddUserToRole(selectedRole.Id, user.Id);
     378            RefreshRoleUsersList();
     379          }
     380        }
     381      }
     382    }
     383
     384
     385    private void btnResetPassword_Click(object sender, EventArgs e) {
     386
     387      string applicationName = currentApplication.Name;
     388      string userName = selectedUser.Name;
     389      string password = tbPassword.Text;
     390
     391      AuthenticationClient.Instance.ResetPassword(applicationName, userName, password);
     392    }
     393  }
    261394}
  • branches/UserManagement/HeuristicLab.Services.Authentication.TestClient2/UserManagement.resx

    r4789 r5257  
    121121    <value>False</value>
    122122  </metadata>
    123   <metadata name="loweredApplicationNameLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    124     <value>False</value>
    125   </metadata>
    126123  <metadata name="nameLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    127124    <value>False</value>
     
    133130    <value>False</value>
    134131  </metadata>
    135   <metadata name="isApprovedLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    136     <value>False</value>
    137   </metadata>
    138132  <metadata name="nameLabel1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    139133    <value>False</value>
    140134  </metadata>
    141   <metadata name="passwordLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    142     <value>False</value>
    143   </metadata>
    144   <metadata name="passwordSaltLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    145     <value>False</value>
    146   </metadata>
    147135  <metadata name="nameLabel2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    148136    <value>False</value>
    149137  </metadata>
    150   <metadata name="loweredRoleNameLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    151     <value>False</value>
    152   </metadata>
    153138  <metadata name="descriptionLabel1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    154139    <value>False</value>
    155140  </metadata>
    156   <metadata name="bsApplications.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    157     <value>188, 17</value>
    158   </metadata>
    159   <metadata name="bsUsers.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    160     <value>319, 17</value>
    161   </metadata>
    162   <metadata name="bsRoles.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    163     <value>413, 17</value>
    164   </metadata>
    165   <metadata name="bsUserRoles.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    166     <value>506, 17</value>
    167   </metadata>
    168   <metadata name="bsRoleUsers.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    169     <value>624, 17</value>
    170   </metadata>
    171   <metadata name="bsApplicationsCombo.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     141  <metadata name="colName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     142    <value>True</value>
     143  </metadata>
     144  <metadata name="colDescription.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     145    <value>True</value>
     146  </metadata>
     147  <metadata name="applicationBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     148    <value>226, 17</value>
     149  </metadata>
     150  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     151    <value>116, 17</value>
     152  </metadata>
     153  <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    172154    <value>17, 17</value>
    173155  </metadata>
     156  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
     157  <data name="tspNewApplication.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     158    <value>
     159        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     160        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     161        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     162        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     163        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     164        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     165        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     166        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     167        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     168        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     169        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     170</value>
     171  </data>
     172  <data name="tspDeleteApplication.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     173    <value>
     174        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     175        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     176        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     177        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     178        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     179        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     180        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     181        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     182        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     183        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     184        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     185</value>
     186  </data>
     187  <data name="tspSaveApplication.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     188    <value>
     189        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     190        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     191        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     192        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     193        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     194        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     195        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     196        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     197        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     198        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     199        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     200</value>
     201  </data>
     202  <metadata name="userBindingSource2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     203    <value>452, 54</value>
     204  </metadata>
     205  <metadata name="toolStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     206    <value>402, 17</value>
     207  </metadata>
     208  <data name="tsbNewUser.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     209    <value>
     210        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     211        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     212        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     213        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     214        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     215        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     216        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     217        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     218        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     219        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     220        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     221</value>
     222  </data>
     223  <data name="tsbDeleteUser.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     224    <value>
     225        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     226        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     227        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     228        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     229        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     230        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     231        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     232        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     233        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     234        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     235        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     236</value>
     237  </data>
     238  <data name="tsbSaveUser.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     239    <value>
     240        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     241        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     242        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     243        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     244        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     245        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     246        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     247        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     248        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     249        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     250        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     251</value>
     252  </data>
     253  <metadata name="label2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     254    <value>False</value>
     255  </metadata>
     256  <metadata name="roleBindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     257    <value>602, 54</value>
     258  </metadata>
     259  <metadata name="toolStrip3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     260    <value>611, 17</value>
     261  </metadata>
     262  <data name="tsbRemoveRoleFromUser.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     263    <value>
     264        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     265        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     266        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     267        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     268        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     269        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     270        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     271        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     272        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     273        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     274        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     275</value>
     276  </data>
     277  <metadata name="roleBindingSource2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     278    <value>749, 54</value>
     279  </metadata>
     280  <metadata name="toolStrip4.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     281    <value>710, 17</value>
     282  </metadata>
     283  <data name="tsbAddRoleToUser.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     284    <value>
     285        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     286        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     287        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     288        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     289        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     290        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     291        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     292        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     293        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     294        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     295        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     296</value>
     297  </data>
     298  <metadata name="statusStrip2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     299    <value>501, 17</value>
     300  </metadata>
     301  <metadata name="roleBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     302    <value>311, 54</value>
     303  </metadata>
     304  <metadata name="userBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     305    <value>17, 54</value>
     306  </metadata>
     307  <metadata name="toolStrip7.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     308    <value>1117, 17</value>
     309  </metadata>
     310  <data name="tsbAddUserToRole.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     311    <value>
     312        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     313        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     314        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     315        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     316        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     317        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     318        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     319        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     320        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     321        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     322        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     323</value>
     324  </data>
     325  <metadata name="userBindingSource1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     326    <value>161, 54</value>
     327  </metadata>
     328  <metadata name="toolStrip6.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     329    <value>1018, 17</value>
     330  </metadata>
     331  <data name="tsbRemoveUserFromRole.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     332    <value>
     333        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     334        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     335        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     336        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     337        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     338        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     339        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     340        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     341        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     342        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     343        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     344</value>
     345  </data>
     346  <metadata name="statusStrip3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     347    <value>908, 17</value>
     348  </metadata>
     349  <metadata name="toolStrip5.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     350    <value>809, 17</value>
     351  </metadata>
     352  <data name="tspNewRole.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     353    <value>
     354        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     355        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     356        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     357        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     358        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     359        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     360        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     361        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     362        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     363        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     364        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     365</value>
     366  </data>
     367  <data name="tsbDeleteRole.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     368    <value>
     369        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     370        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     371        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     372        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     373        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     374        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     375        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     376        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     377        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     378        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     379        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     380</value>
     381  </data>
     382  <data name="tsbSaveRole.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     383    <value>
     384        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
     385        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL
     386        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI
     387        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ
     388        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4
     389        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9
     390        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j
     391        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR
     392        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb
     393        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE
     394        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC
     395</value>
     396  </data>
    174397</root>
  • branches/UserManagement/HeuristicLab.Services.Authentication.TestClient2/app.config

    r4979 r5257  
    2828                contract="HeuristicLab.Services.Authentication.IAuthenticationService"
    2929                name="WSHttpBinding_IAuthenticationService">
    30                 <identity>
    31                     <certificate encodedValue="AwAAAAEAAAAUAAAAXL2k/dCMiB3+7a8y6zepgAUMPdcgAAAAAQAAAPIBAAAwggHuMIIBW6ADAgECAhB0J9LOt5NHpkN1DGclpr/0MAkGBSsOAwIdBQAwFDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTEwMDkyMTE4MDIwN1oXDTM5MTIzMTIzNTk1OVowFDESMBAGA1UEAxMJbG9jYWxob3N0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC73VKB25OrytpquyozHwo7d711Z4KEQEWHIigtJufMBUIzpQWXQrySaYrOdjZxuDJE8M7+kUi6FJny3o48Z8ZEEIKdoy4fJ+o5+rXKKNyg3rZxae1KJm4kQ3rIRu68b3cu6EYvFymORNo+gv8A03IbA2F7K1vaQbuRDAdbP8CT+QIDAQABo0kwRzBFBgNVHQEEPjA8gBC/lrDi96sGW7ZLNecSjhFEoRYwFDESMBAGA1UEAxMJbG9jYWxob3N0ghB0J9LOt5NHpkN1DGclpr/0MAkGBSsOAwIdBQADgYEAdls1HmJKAhEUZvCcg/ELZYpRHF3ds5mHsYrNNhEoUTrHYJzsXDqxLMyn9nbKQHv+kBH7tdgF61agYvy3666D7EHPMXyEk6OwCVxIvOyNaHywS0v7/fyU/394VpzFNmkuycaiemEZFhqxstKN6n4PzBqOJfUmIE9Ry/mnlp6T2Zo=" />
    32                 </identity>
     30              <identity>
     31                <certificate encodedValue="AwAAAAEAAAAUAAAAcW5qweN5KE/c7vDfiOgOVK9MmdUgAAAAAQAAAPIBAAAwggHuMIIBW6ADAgECAhBNYVKrw/XEtUXaCrJWdRQ3MAkGBSsOAwIdBQAwFDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTEwMTIxMDEyNDEzOFoXDTM5MTIzMTIzNTk1OVowFDESMBAGA1UEAxMJbG9jYWxob3N0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDcDRvCjtxUsUVe09hYQopTYzqvWEkVmwQhm3L/ZsYL5OXzfmGlT7/sL5SzWzlWrdDIMjW/H65bR50IxvgZ3B/N7x5jnvaV9wIH3000XYHMxKLoTzhths7OjU0uFHnQcI4mzhm6WralCag/wonW5T36pW8s2PixqUBecZZw0hBlbwIDAQABo0kwRzBFBgNVHQEEPjA8gBDjWp8J1q9QALL3wjJ/Q0j5oRYwFDESMBAGA1UEAxMJbG9jYWxob3N0ghBNYVKrw/XEtUXaCrJWdRQ3MAkGBSsOAwIdBQADgYEADaAsqAYk9qAuzyzkG6i2dCo1lOFuwKobPDzFJ7i3DvIeG8M9b+3JonFJiHItHEG2la82m+kCwV/uedicGdonSzG2WJwh3RqZq6CAlw8mz883npGD0w119XADxSZy+X4Tg6qrePVtWyH2MnKUMb7UTtwgRMhJrrdweP+ysdyue0o=" />
     32              </identity>
    3333            </endpoint>
    3434        </client>
  • branches/UserManagement/HeuristicLab.Services.Authentication/AuthenticationService.cs

    r4979 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21
     22using System;
    223using System.Collections.Generic;
    324using System.Linq;
     
    829using System.Diagnostics;
    930
    10 namespace HeuristicLab.Services.Authentication
    11 {
    12     [ServiceBehavior(IncludeExceptionDetailInFaults = true)]
    13     public class AuthenticationService : IAuthenticationService
    14     {
    15 
    16         #region User
    17 
    18 
    19         public DataTransfer.User GetUser(Guid id)
    20         {
    21             using (UserManagementDataContext db = new UserManagementDataContext())
    22             {
    23                 var user = db.aspnet_Users.Where(x => x.UserId == id).FirstOrDefault();
    24                 var membership = db.aspnet_Memberships.Where(x => x.UserId == id).FirstOrDefault();
    25 
    26 
    27                 return Convert.ToDataTransfer(user, membership);
    28 
    29 
    30             }
    31         }
    32 
    33         public IEnumerable<DataTransfer.User> GetAllUsers() {
    34           List<DataTransfer.User> userList = new List<DataTransfer.User>();
    35           using (UserManagementDataContext db = new UserManagementDataContext()) {
    36             var users = db.aspnet_Users.ToList<aspnet_User>();
    37             foreach (aspnet_User user in users) {
    38               var membership = db.aspnet_Memberships.Where(x => x.UserId == user.UserId).FirstOrDefault();
    39               userList.Add(Convert.ToDataTransfer(user, membership));
    40             }
    41           }
    42 
    43           return userList;
    44         }
    45 
    46         public IEnumerable<DataTransfer.User> GetUsers(Guid applicationId)
    47         {
    48             List<DataTransfer.User> userList = new List<DataTransfer.User>();
    49             using (UserManagementDataContext db = new UserManagementDataContext())
    50             {
    51                 var users = db.aspnet_Users.Where(x => x.ApplicationId == applicationId).ToList<aspnet_User>();
    52 
    53                 foreach (aspnet_User user in users)
    54                 {
    55                     var membership = db.aspnet_Memberships.Where(x => x.UserId == user.UserId).FirstOrDefault();
    56 
    57                     userList.Add(Convert.ToDataTransfer(user, membership));
    58 
    59                 }
    60 
    61 
    62 
    63             }
    64             return userList;
    65         }
    66 
    67         public Guid AddUser(User user)
    68         {
    69             if (user != null)
    70             {
    71                 using (UserManagementDataContext db = new UserManagementDataContext())
    72                 {
    73 
    74                     aspnet_User eUser = new aspnet_User();
    75                     aspnet_Membership eMembership = new aspnet_Membership();
    76 
    77                     Convert.ToEntity(user, eUser, eMembership);
    78                     try
    79                     {
    80                         db.aspnet_Users.InsertOnSubmit(eUser);
    81                         db.aspnet_Memberships.InsertOnSubmit(eMembership);
    82                         db.SubmitChanges();
    83                     }
    84                     catch (Exception ex)
    85                     {
    86                         return Guid.Empty;
    87                     }
    88 
    89                     return user.Id;
    90 
    91 
    92                 }
    93 
    94             }
    95             return Guid.Empty;
    96         }
    97 
    98         public bool DeleteUser(Guid id)
    99         {
    100 
    101             using (UserManagementDataContext db = new UserManagementDataContext())
    102             {
    103                 var user = db.aspnet_Users.Where(x => x.UserId == id).FirstOrDefault();
    104                 var membership = db.aspnet_Memberships.Where(x => x.UserId == id).FirstOrDefault();
    105                 var userinroles = db.aspnet_UsersInRoles.Where(x => x.UserId == id).ToList<aspnet_UsersInRole>();
    106                 try
    107                 {
    108                     db.aspnet_UsersInRoles.DeleteAllOnSubmit(userinroles);
    109                     db.aspnet_Memberships.DeleteOnSubmit(membership);
    110                     db.aspnet_Users.DeleteOnSubmit(user);
    111                     db.SubmitChanges();
    112                 }
    113                 catch (Exception ex)
    114                 {
    115                     return false;
    116                 }
    117                 return true;
    118 
    119             }
    120             return false;
    121         }
    122 
    123 
    124         public bool UpdateUser(User user)
    125         {
    126             if (user != null)
    127             {
    128                 using (UserManagementDataContext db = new UserManagementDataContext())
    129                 {
    130 
    131                     var eUser = db.aspnet_Users.Where(x => x.UserId == user.Id).FirstOrDefault();
    132                     var eMembership = db.aspnet_Memberships.Where(x => x.UserId == user.Id).FirstOrDefault();
    133                     Convert.ToEntity(user, eUser, eMembership);
    134                     try
    135                     {
    136 
    137                         db.SubmitChanges();
    138                     }
    139                     catch (Exception ex)
    140                     {
    141                         return false;
    142                     }
    143 
    144                     return true;
    145 
    146                 }
    147 
    148             }
    149             return false;
    150         }
    151 
    152 
    153         public bool AddUserToRole(Guid roleId, Guid userId) {
    154           using (UserManagementDataContext db = new UserManagementDataContext()) {
    155             try {
    156               aspnet_UsersInRole r = new aspnet_UsersInRole();
    157               r.RoleId = roleId;
    158               r.UserId = userId;
    159               db.aspnet_UsersInRoles.InsertOnSubmit(r);
    160               db.SubmitChanges();
    161               return true;
    162             }
    163             catch (Exception ex) {
    164               Debug.WriteLine(ex.InnerException);
    165               return false;
    166             }
    167           }
    168         }
    169 
    170         public IEnumerable<Guid> GetUsersInRole(Guid roleId) {
    171           List<Guid> userList = new List<Guid>();
    172           using (UserManagementDataContext db = new UserManagementDataContext()) {
    173             try {
    174               var users = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId).ToList<aspnet_UsersInRole>();
    175 
    176               foreach (aspnet_UsersInRole u in users) {
    177                 userList.Add(GetUser(u.UserId).Id);
    178               }
    179 
    180             }
    181             catch (Exception ex) {
    182               Debug.WriteLine(ex.InnerException);
    183               return new List<Guid>();
    184 
    185             }
    186 
    187           }
    188 
    189           return userList;
    190         }
    191 
    192       /*
    193         public IEnumerable<User> GetUsersInRole(Guid roleId) {
    194           List<User> userList = new List<User>();
    195           using (UserManagementDataContext db = new UserManagementDataContext()) {
    196             try {
    197               var users = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId).ToList<aspnet_UsersInRole>();
    198 
    199               foreach (aspnet_UsersInRole u in users) {
    200                 userList.Add(GetUser(u.UserId));
    201 
    202               }
    203 
    204             }
    205             catch (Exception ex) {
    206               Debug.WriteLine(ex.InnerException);
    207               return new List<User>();
    208             }
    209           }
    210 
    211           return userList;
    212         }
    213        */
    214 
    215         public bool IsUserInRole(Guid userId, Guid roleId) {
    216           bool isInRole = false;
    217           using (UserManagementDataContext db = new UserManagementDataContext()) {
    218             var users = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId && x.UserId == userId).ToList<aspnet_UsersInRole>();
    219             foreach (aspnet_UsersInRole u in users) {
    220               isInRole = true;
    221             }
    222           }
    223           return isInRole;
    224 
    225         }
    226 
    227 
    228         public bool RemoveUserFromRole(Guid roleId, Guid userId) {
    229           using (UserManagementDataContext db = new UserManagementDataContext()) {
    230             try {
    231               var role = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId && x.UserId == userId).FirstOrDefault();
    232 
    233               db.aspnet_UsersInRoles.DeleteOnSubmit(role);
    234               db.SubmitChanges();
    235               return true;
    236 
    237             }
    238             catch (Exception ex) {
    239               Debug.WriteLine(ex.InnerException);
    240               return false;
    241             }
    242           }
    243 
    244         }
    245 
    246 
    247 
    248 
    249         #endregion
    250 
    251 
    252 
    253         #region Role
    254 
    255         public Role GetRole(Guid id)
    256         {
    257             using (UserManagementDataContext db = new UserManagementDataContext())
    258             {
    259                 var role = db.aspnet_Roles.Where(x => x.RoleId == id).FirstOrDefault();
    260                 return Convert.ToDataTransfer(role);
    261             }
    262         }
    263 
    264         public IEnumerable<Role> GetAllRoles() {
    265           List<DataTransfer.Role> roleList = new List<DataTransfer.Role>();
    266           using (UserManagementDataContext db = new UserManagementDataContext()) {
    267             var roles = db.aspnet_Roles.ToList<aspnet_Role>();
    268             foreach (aspnet_Role role in roles) {
    269               roleList.Add(Convert.ToDataTransfer(role));
    270             }
    271           }
    272           return roleList;
    273         }
    274 
    275         public IEnumerable<Role> GetRoles(Guid applicationId)
    276         {
    277             List<DataTransfer.Role> roleList = new List<DataTransfer.Role>();
    278             using (UserManagementDataContext db = new UserManagementDataContext())
    279             {
    280                 var roles = db.aspnet_Roles.Where(x => x.ApplicationId == applicationId).ToList<aspnet_Role>();
    281 
    282                 foreach (aspnet_Role role in roles)
    283                 {
    284                     roleList.Add(Convert.ToDataTransfer(role));
    285                 }
    286 
    287             }
    288             return roleList;
    289         }
    290 
    291         public Guid AddRole(Role role)
    292         {
    293 
    294             if (role != null)
    295             {
    296                 using (UserManagementDataContext db = new UserManagementDataContext())
    297                 {
    298 
    299                     aspnet_Role eRole = new aspnet_Role();
    300 
    301                     Convert.ToEntity(role, eRole);
    302                     try
    303                     {
    304                         db.aspnet_Roles.InsertOnSubmit(eRole);
    305                         db.SubmitChanges();
    306                     }
    307                     catch (Exception ex)
    308                     {
    309                         return Guid.Empty;
    310                     }
    311 
    312                     return role.Id;
    313                 }
    314 
    315             }
    316             return Guid.Empty;
    317         }
    318 
    319         public bool DeleteRole(Guid id)
    320         {
    321             using (UserManagementDataContext db = new UserManagementDataContext())
    322             {
    323                 var role = db.aspnet_Roles.Where(x => x.RoleId == id).FirstOrDefault();
    324 
    325 
    326                 try
    327                 {
    328                     db.aspnet_Roles.DeleteOnSubmit(role);
    329                     db.SubmitChanges();
    330                 }
    331                 catch (Exception ex)
    332                 {
    333                     return false;
    334                 }
    335                 return true;
    336 
    337 
    338             }
    339         }
    340 
    341         public IEnumerable<Guid> GetRolesForUser(Guid userId) {
    342           List<Guid> roleList = new List<Guid>();
    343           using (UserManagementDataContext db = new UserManagementDataContext()) {
    344             try {
    345               var roles = db.aspnet_UsersInRoles.Where(x => x.UserId == userId).ToList<aspnet_UsersInRole>();
    346               foreach (aspnet_UsersInRole r in roles) {
    347                 roleList.Add(GetRole(r.RoleId).Id);
    348               }
    349             }
    350             catch (Exception ex) {
    351               Debug.WriteLine(ex.InnerException);
    352               return new List<Guid>();
    353             }
    354           }
    355 
    356           return roleList;
    357 
    358         }
    359 
    360        /*
    361         public IEnumerable<Role> GetRolesForUser(Guid userId)
    362         {
    363             List<Role> roleList = new List<Role>();
    364             using (UserManagementDataContext db = new UserManagementDataContext())
    365             {
    366                 try
    367                 {
    368                     var roles = db.aspnet_UsersInRoles.Where(x => x.UserId == userId).ToList<aspnet_UsersINRole>();
    369 
    370                     foreach (aspnet_UsersInRole r in roles)
    371                     {
    372                         roleList.Add(GetRole(r.RoleId));
    373 
    374                     }
    375 
    376                 }
    377                 catch (Exception ex)
    378                 {
    379                     Debug.WriteLine(ex.InnerException);
    380                     return new List<Role>();
    381                 }
    382             }
    383 
    384             return roleList;
    385         }
    386          */
    387 
    388 
    389 
    390         public bool UpdateRole(Role role)
    391         {
    392             if (role != null)
    393             {
    394                 using (UserManagementDataContext db = new UserManagementDataContext())
    395                 {
    396 
    397                     var eRole = db.aspnet_Roles.Where(x => x.RoleId == role.Id).FirstOrDefault();
    398 
    399                     Convert.ToEntity(role, eRole);
    400                     try
    401                     {
    402 
    403                         db.SubmitChanges();
    404                     }
    405                     catch (Exception ex)
    406                     {
    407                         return false;
    408                     }
    409 
    410                     return true;
    411 
    412                 }
    413 
    414             }
    415             return false;
    416         }
    417 
    418 
    419 
    420         #endregion
    421 
    422 
    423 
    424         #region Application
    425 
    426         public Guid AddApplication(Application application)
    427         {
    428             if (application != null)
    429             {
    430                 using (UserManagementDataContext db = new UserManagementDataContext())
    431                 {
    432 
    433                     aspnet_Application eApplication = new aspnet_Application();
    434 
    435                     Convert.ToEntity(application, eApplication);
    436                     try
    437                     {
    438                         db.aspnet_Applications.InsertOnSubmit(eApplication);
    439                         db.SubmitChanges();
    440                     }
    441                     catch (Exception ex)
    442                     {
    443                         return Guid.Empty;
    444                     }
    445 
    446                     return application.Id;
    447 
    448                 }
    449 
    450             }
    451             return Guid.Empty;
    452         }
    453 
    454         public bool UpdateApplication(Application application)
    455         {
    456             if (application != null)
    457             {
    458                 using (UserManagementDataContext db = new UserManagementDataContext())
    459                 {
    460 
    461                     var eApplication = db.aspnet_Applications.Where(x => x.ApplicationId == application.Id).FirstOrDefault();
    462 
    463                     Convert.ToEntity(application, eApplication);
    464                     try
    465                     {
    466 
    467                         db.SubmitChanges();
    468                     }
    469                     catch (Exception ex)
    470                     {
    471                         return false;
    472                     }
    473 
    474                     return true;
    475 
    476                 }
    477 
    478             }
    479             return false;
    480         }
    481 
    482 
    483         public bool DeleteApplication(Guid applicationId)
    484         {
    485             using (UserManagementDataContext db = new UserManagementDataContext())
    486             {
    487                 var users = db.aspnet_Users.Where(x => x.ApplicationId == applicationId).ToList<aspnet_User>();
    488                 var memberships = db.aspnet_Memberships.Where(x => x.ApplicationId == applicationId).ToList<aspnet_Membership>();
    489 
    490                 var roles = db.aspnet_Roles.Where(x => x.ApplicationId == applicationId).ToList<aspnet_Role>();
    491                 var application = db.aspnet_Applications.Where(x => x.ApplicationId == applicationId).FirstOrDefault();
    492 
    493                 try
    494                 {
    495                     foreach (aspnet_User u in users)
    496                     {
    497                         var userinroles = db.aspnet_UsersInRoles.Where(x => x.UserId == u.UserId).ToList<aspnet_UsersInRole>();
    498                         db.aspnet_UsersInRoles.DeleteAllOnSubmit(userinroles);
    499                     }
    500 
    501                     db.aspnet_Memberships.DeleteAllOnSubmit(memberships);
    502                     db.aspnet_Users.DeleteAllOnSubmit(users);
    503                     db.aspnet_Roles.DeleteAllOnSubmit(roles);
    504                     db.aspnet_Applications.DeleteOnSubmit(application);
    505                     db.SubmitChanges();
    506                 }
    507                 catch (Exception ex)
    508                 {
    509                     return false;
    510                 }
    511                 return true;
    512 
    513 
    514             }
    515             return false;
    516         }
    517 
    518         public Application GetApplication(Guid id)
    519         {
    520             using (UserManagementDataContext db = new UserManagementDataContext())
    521             {
    522                 var application = db.aspnet_Applications.Where(x => x.ApplicationId == id).FirstOrDefault();
    523                 return Convert.ToDataTransfer(application);
    524             }
    525         }
    526 
    527         public IEnumerable<DataTransfer.Application> GetApplications()
    528         {
    529             List<DataTransfer.Application> applicationList = new List<DataTransfer.Application>();
    530             using (UserManagementDataContext db = new UserManagementDataContext())
    531             {
    532                 var apps = db.aspnet_Applications.ToList<aspnet_Application>();
    533 
    534                 foreach (aspnet_Application app in apps)
    535                 {
    536                     applicationList.Add(Convert.ToDataTransfer(app));
    537                 }
    538 
    539             }
    540             return applicationList;
    541         }
    542 
    543         #endregion
    544     }
    545 
     31namespace HeuristicLab.Services.Authentication {
     32  [ServiceBehavior(IncludeExceptionDetailInFaults = true)]
     33  public class AuthenticationService : IAuthenticationService {
     34
     35    #region User
     36
     37    public DataTransfer.User GetUser(Guid id) {
     38      using (UserManagementDataContext db = new UserManagementDataContext()) {
     39        var user = db.aspnet_Users.FirstOrDefault(x => x.UserId == id);
     40        var membership = db.aspnet_Memberships.Where(x => x.UserId == id).FirstOrDefault();
     41        return Convert.ToDto(user, membership);
     42      }
     43    }
     44
     45    public IEnumerable<User> GetUsers() {
     46      using (UserManagementDataContext db = new UserManagementDataContext()) {
     47        var users = db.aspnet_Users.OrderBy(x => x.UserId).ToList().Zip(db.aspnet_Memberships.OrderBy(x => x.UserId), (x, y) => Convert.ToDto(x, y));
     48        return users;
     49      }
     50    }
     51
     52
     53    public IEnumerable<User> GetUsersForApplication(Guid applicationId) {
     54      using (UserManagementDataContext db = new UserManagementDataContext()) {
     55        var users = db.aspnet_Users.Where(x => x.ApplicationId == applicationId).OrderBy(x => x.UserId).ToList().Zip(db.aspnet_Memberships.Where(x => x.ApplicationId == applicationId).OrderBy(x => x.UserId), (x, y) => Convert.ToDto(x, y)).ToArray();
     56        return users;
     57      }
     58    }
     59
     60
     61    public Guid AddUser(User user) {
     62      if (user != null) {
     63        using (UserManagementDataContext db = new UserManagementDataContext()) {
     64          aspnet_User eUser;
     65          aspnet_Membership eMembership;
     66          user.Id = Guid.NewGuid();
     67          Convert.ToEntity(user, out eUser, out  eMembership);
     68          db.aspnet_Users.InsertOnSubmit(eUser);
     69          db.aspnet_Memberships.InsertOnSubmit(eMembership);
     70          db.SubmitChanges();
     71          return user.Id;
     72        }
     73      }
     74      return Guid.Empty;
     75
     76    }
     77
     78    public void DeleteUser(Guid id) {
     79      using (UserManagementDataContext db = new UserManagementDataContext()) {
     80        var user = db.aspnet_Users.Where(x => x.UserId == id).FirstOrDefault();
     81        var membership = db.aspnet_Memberships.Where(x => x.UserId == id).FirstOrDefault();
     82        var userinroles = db.aspnet_UsersInRoles.Where(x => x.UserId == id).ToList<aspnet_UsersInRole>();
     83        db.aspnet_UsersInRoles.DeleteAllOnSubmit(userinroles);
     84        db.aspnet_Memberships.DeleteOnSubmit(membership);
     85        db.aspnet_Users.DeleteOnSubmit(user);
     86        db.SubmitChanges();
     87      }
     88
     89    }
     90
     91
     92    public void UpdateUser(User user) {
     93      using (UserManagementDataContext db = new UserManagementDataContext()) {
     94        var eUser = db.aspnet_Users.Where(x => x.UserId == user.Id).FirstOrDefault();
     95        var eMembership = db.aspnet_Memberships.Where(x => x.UserId == user.Id).FirstOrDefault();
     96        Convert.ToEntity(user, eUser, eMembership);
     97        db.SubmitChanges();
     98      }
     99    }
     100
     101
     102    public void AddUserToRole(Guid roleId, Guid userId) {
     103      using (UserManagementDataContext db = new UserManagementDataContext()) {
     104        aspnet_UsersInRole r = new aspnet_UsersInRole();
     105        r.RoleId = roleId;
     106        r.UserId = userId;
     107        db.aspnet_UsersInRoles.InsertOnSubmit(r);
     108        db.SubmitChanges();
     109      }
     110    }
     111
     112
     113
     114    public IEnumerable<Guid> GetUsersInRole(Guid roleId) {
     115      using (UserManagementDataContext db = new UserManagementDataContext()) {
     116        List<Guid> userList = new List<Guid>();
     117        var users = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId).ToList<aspnet_UsersInRole>();
     118        foreach (aspnet_UsersInRole u in users) {
     119          userList.Add(GetUser(u.UserId).Id);
     120        }
     121        return userList;
     122      }
     123    }
     124
     125
     126    public bool IsUserInRole(Guid userId, Guid roleId) {
     127      using (UserManagementDataContext db = new UserManagementDataContext()) {
     128        bool isInRole = false;
     129        var users = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId && x.UserId == userId).ToList<aspnet_UsersInRole>();
     130        foreach (aspnet_UsersInRole u in users) {
     131          isInRole = true;
     132        }
     133        return isInRole;
     134      }
     135    }
     136
     137
     138    public void RemoveUserFromRole(Guid roleId, Guid userId) {
     139      using (UserManagementDataContext db = new UserManagementDataContext()) {
     140        var role = db.aspnet_UsersInRoles.Where(x => x.RoleId == roleId && x.UserId == userId).FirstOrDefault();
     141        db.aspnet_UsersInRoles.DeleteOnSubmit(role);
     142        db.SubmitChanges();
     143      }
     144    }
     145
     146
     147    // TODO !!!
     148    public User ResetPassword(string applicationName, string userName, string password) {
     149
     150      string salt = "";
     151      string answer = "";
     152
     153      using (UserManagementDataContext db = new UserManagementDataContext()) {
     154        db.aspnet_Membership_ResetPassword(applicationName, userName, password, null, null, salt, null, null, answer);
     155        return null;
     156      }
     157    }
     158
     159    #endregion
     160
     161    #region Role
     162
     163    public Role GetRole(Guid id) {
     164      using (UserManagementDataContext db = new UserManagementDataContext()) {
     165        var role = db.aspnet_Roles.Where(x => x.RoleId == id).FirstOrDefault();
     166        return Convert.ToDto(role);
     167      }
     168    }
     169
     170    public IEnumerable<Role> GetRoles() {
     171
     172      using (UserManagementDataContext db = new UserManagementDataContext()) {
     173        List<DataTransfer.Role> roleList = new List<DataTransfer.Role>();
     174        var roles = db.aspnet_Roles.ToList<aspnet_Role>();
     175        foreach (aspnet_Role role in roles) {
     176          roleList.Add(Convert.ToDto(role));
     177        }
     178        return roleList;
     179      }
     180
     181    }
     182
     183    public IEnumerable<Role> GetRolesForApplication(Guid applicationId) {
     184      using (UserManagementDataContext db = new UserManagementDataContext()) {
     185        List<Role> roleList = new List<Role>();
     186        var roles = db.aspnet_Roles.Where(x => x.ApplicationId == applicationId).ToList<aspnet_Role>();
     187        foreach (aspnet_Role role in roles) {
     188          roleList.Add(Convert.ToDto(role));
     189        }
     190        return roleList;
     191      }
     192    }
     193
     194    public Guid AddRole(Role role) {
     195      if (role != null) {
     196        using (UserManagementDataContext db = new UserManagementDataContext()) {
     197          aspnet_Role eRole = new aspnet_Role();
     198          role.Id = Guid.NewGuid();
     199          Convert.ToEntity(role, eRole);
     200          db.aspnet_Roles.InsertOnSubmit(eRole);
     201          db.SubmitChanges();
     202          return role.Id;
     203        }
     204      }
     205      return Guid.Empty;
     206    }
     207
     208    public void DeleteRole(Guid id) {
     209      using (UserManagementDataContext db = new UserManagementDataContext()) {
     210        var role = db.aspnet_Roles.Where(x => x.RoleId == id).FirstOrDefault();
     211        var userinroles = db.aspnet_UsersInRoles.Where(x => x.RoleId == id).ToList<aspnet_UsersInRole>();
     212        db.aspnet_UsersInRoles.DeleteAllOnSubmit(userinroles);
     213        db.aspnet_Roles.DeleteOnSubmit(role);
     214        db.SubmitChanges();
     215      }
     216    }
     217
     218    public IEnumerable<Guid> GetRolesForUser(Guid userId) {
     219      using (UserManagementDataContext db = new UserManagementDataContext()) {
     220        List<Guid> roleList = new List<Guid>();
     221        var roles = db.aspnet_UsersInRoles.Where(x => x.UserId == userId).ToList<aspnet_UsersInRole>();
     222        foreach (aspnet_UsersInRole r in roles) {
     223          roleList.Add(GetRole(r.RoleId).Id);
     224        }
     225        return roleList;
     226      }
     227    }
     228
     229    public void UpdateRole(Role role) {
     230      using (UserManagementDataContext db = new UserManagementDataContext()) {
     231        var eRole = db.aspnet_Roles.Where(x => x.RoleId == role.Id).FirstOrDefault();
     232        Convert.ToEntity(role, eRole);
     233        db.SubmitChanges();
     234      }
     235    }
     236
     237    #endregion
     238
     239    #region Application
     240
     241    public Guid AddApplication(Application application) {
     242      if (application != null) {
     243        using (UserManagementDataContext db = new UserManagementDataContext()) {
     244          aspnet_Application eApplication = new aspnet_Application();
     245          application.Id = Guid.NewGuid();
     246          Convert.ToEntity(application, eApplication);
     247          db.aspnet_Applications.InsertOnSubmit(eApplication);
     248          db.SubmitChanges();
     249          return application.Id;
     250        }
     251      }
     252      return Guid.Empty;
     253    }
     254
     255    public void UpdateApplication(Application application) {
     256      using (UserManagementDataContext db = new UserManagementDataContext()) {
     257        var eApplication = db.aspnet_Applications.Where(x => x.ApplicationId == application.Id).FirstOrDefault();
     258        Convert.ToEntity(application, eApplication);
     259        db.SubmitChanges();
     260      }
     261    }
     262
     263
     264    public void DeleteApplication(Guid applicationId) {
     265      using (UserManagementDataContext db = new UserManagementDataContext()) {
     266        var users = db.aspnet_Users.Where(x => x.ApplicationId == applicationId).ToList<aspnet_User>();
     267        var memberships = db.aspnet_Memberships.Where(x => x.ApplicationId == applicationId).ToList<aspnet_Membership>();
     268        var roles = db.aspnet_Roles.Where(x => x.ApplicationId == applicationId).ToList<aspnet_Role>();
     269        var application = db.aspnet_Applications.Where(x => x.ApplicationId == applicationId).FirstOrDefault();
     270        foreach (aspnet_User u in users) {
     271          var userinroles = db.aspnet_UsersInRoles.Where(x => x.UserId == u.UserId).ToList<aspnet_UsersInRole>();
     272          db.aspnet_UsersInRoles.DeleteAllOnSubmit(userinroles);
     273        }
     274        db.aspnet_Memberships.DeleteAllOnSubmit(memberships);
     275        db.aspnet_Users.DeleteAllOnSubmit(users);
     276        db.aspnet_Roles.DeleteAllOnSubmit(roles);
     277        db.aspnet_Applications.DeleteOnSubmit(application);
     278        db.SubmitChanges();
     279      }
     280    }
     281
     282    public Application GetApplication(Guid id) {
     283      using (UserManagementDataContext db = new UserManagementDataContext()) {
     284        var application = db.aspnet_Applications.Where(x => x.ApplicationId == id).FirstOrDefault();
     285        return Convert.ToDto(application);
     286      }
     287    }
     288
     289    public IEnumerable<Application> GetApplications() {
     290      List<Application> applicationList = new List<Application>();
     291      using (UserManagementDataContext db = new UserManagementDataContext()) {
     292        var apps = db.aspnet_Applications.ToList<aspnet_Application>();
     293        foreach (aspnet_Application app in apps) {
     294          applicationList.Add(Convert.ToDto(app));
     295        }
     296      }
     297      return applicationList;
     298    }
     299    #endregion
     300  }
    546301}
    547 
  • branches/UserManagement/HeuristicLab.Services.Authentication/Convert.cs

    r4979 r5257  
    1 using HeuristicLab.Services.Authentication.DataAccess;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using HeuristicLab.Services.Authentication.DataAccess;
    222using HeuristicLab.Services.Authentication.DataTransfer;
    323
    4 namespace HeuristicLab.Services.Authentication
    5 {
    6     public class Convert
    7     {
     24namespace HeuristicLab.Services.Authentication {
     25  public class Convert {
    826
    9         #region User
     27    #region User
    1028
    11         /// <summary>
    12         /// converts data access object to data transfer object
    13         /// </summary>
    14         /// <param name="source">data access object</param>
    15         /// <returns>data transfer object</returns>
    16         public static User ToDataTransfer(aspnet_User userSource, aspnet_Membership membershipSource)
    17         {
    18             if (userSource == null || membershipSource == null) return null;
    19             return new User()
    20             {
    21                 ApplicationId = userSource.ApplicationId,
    22                 Id = userSource.UserId,
    23                 Name = userSource.UserName,
    24                 //LoweredUserName = userSource.LoweredUserName,
    25                 //IsAnonymous = userSource.IsAnonymous,
    26                 LastActivityDate = userSource.LastActivityDate,
    27                 Password = membershipSource.Password,
    28                 PasswordSalt = membershipSource.PasswordSalt,
    29                 Email = membershipSource.Email,
    30                 IsApproved = membershipSource.IsApproved,
    31                 IsLookedOut = membershipSource.IsApproved,
    32                 CreateDate = membershipSource.CreateDate,
    33                 LastLoginDate = membershipSource.LastLoginDate,
    34                 LastPasswordChangeDate = membershipSource.LastPasswordChangedDate,
    35                 LastLockoutDate = membershipSource.LastLockoutDate,
    36                 Comment = membershipSource.Comment
    37             };
    38         }
     29    public static User ToDto(aspnet_User sourceUser, aspnet_Membership sourceMembership) {
     30      if (sourceUser == null || sourceMembership == null) return null;
     31      return new User() {
     32        ApplicationId = sourceUser.ApplicationId,
     33        Id = sourceUser.UserId,
     34        Name = sourceUser.UserName,
     35        LastActivityDate = sourceUser.LastActivityDate,
     36        Email = sourceMembership.Email,
     37        IsApproved = sourceMembership.IsApproved,
     38        IsLookedOut = sourceMembership.IsApproved,
     39        CreateDate = sourceMembership.CreateDate,
     40        LastLoginDate = sourceMembership.LastLoginDate,
     41        LastPasswordChangeDate = sourceMembership.LastPasswordChangedDate,
     42        LastLockoutDate = sourceMembership.LastLockoutDate,
     43        Description = sourceMembership.Comment
     44      };
     45    }
    3946
    40         /// <summary>
    41         /// converts data transfer object to data access object
    42         /// </summary>
    43         /// <param name="source">data transfer object</param>
    44         /// <param name="target">data access object</param>
    45         public static void ToEntity(User source, aspnet_User userTarget, aspnet_Membership membershipTarget)
    46         {
    47             if ((source != null) && (userTarget != null) && (membershipTarget != null))
    48             {
    49                 userTarget.ApplicationId = source.ApplicationId;
    50                 membershipTarget.ApplicationId = source.ApplicationId;
    51                 userTarget.UserId = source.Id;
    52                 membershipTarget.UserId = source.Id;
    53                 userTarget.UserName = source.Name;
    54                 userTarget.LoweredUserName = source.Name;
    55                 userTarget.IsAnonymous = false;
    56                 userTarget.LastActivityDate = source.LastActivityDate;
    57                 membershipTarget.Password = source.Password;
    58                 membershipTarget.PasswordFormat = 1;
    59                 membershipTarget.PasswordSalt = source.PasswordSalt;
    60                 membershipTarget.Email = source.Email;
    61                 membershipTarget.IsApproved = source.IsApproved;
    62                 membershipTarget.IsLockedOut = source.IsLookedOut;
    63                 membershipTarget.CreateDate = source.CreateDate;
    64                 membershipTarget.LastLoginDate = source.LastLoginDate;
    65                 membershipTarget.LastPasswordChangedDate = source.LastPasswordChangeDate;
    66                 membershipTarget.LastLockoutDate = source.LastLockoutDate;
    67                 membershipTarget.FailedPasswordAttemptCount = 0;
    68                 membershipTarget.FailedPasswordAttemptWindowStart = new System.DateTime(1900, 01, 01);
    69                 membershipTarget.FailedPasswordAnswerAttemptCount = 0;
    70                 membershipTarget.FailedPasswordAnswerAttemptWindowStart = new System.DateTime(1900, 01, 01);
    71                 membershipTarget.Comment = source.Comment;
     47    public static void ToEntity(User sourceUser, aspnet_User targetUser, aspnet_Membership targetMembership) {
     48      if ((sourceUser != null) && (targetUser != null) && (targetMembership != null)) {
     49        targetUser.ApplicationId = sourceUser.ApplicationId;
     50        targetUser.UserId = sourceUser.Id;
     51        targetUser.UserName = sourceUser.Name;
     52        targetUser.LoweredUserName = sourceUser.Name;
     53        targetUser.IsAnonymous = false;
     54        targetUser.LastActivityDate = sourceUser.LastActivityDate;
     55        targetMembership.UserId = sourceUser.Id;
     56        targetMembership.ApplicationId = sourceUser.ApplicationId;
     57        targetMembership.PasswordFormat = 1;
     58        targetMembership.Email = sourceUser.Email;
     59        targetMembership.IsApproved = sourceUser.IsApproved;
     60        targetMembership.IsLockedOut = sourceUser.IsLookedOut;
     61        targetMembership.CreateDate = sourceUser.CreateDate;
     62        targetMembership.LastLoginDate = sourceUser.LastLoginDate;
     63        targetMembership.LastPasswordChangedDate = sourceUser.LastPasswordChangeDate;
     64        targetMembership.LastLockoutDate = sourceUser.LastLockoutDate;
     65        targetMembership.FailedPasswordAttemptCount = 0;
     66        targetMembership.FailedPasswordAttemptWindowStart = new System.DateTime(1900, 01, 01);
     67        targetMembership.FailedPasswordAnswerAttemptCount = 0;
     68        targetMembership.FailedPasswordAnswerAttemptWindowStart = new System.DateTime(1900, 01, 01);
     69        targetMembership.Comment = sourceUser.Description;
     70      }
     71    }
    7272
    73             }
     73    public static void ToEntity(User source, out aspnet_User userTarget, out aspnet_Membership membershipTarget) {
     74      userTarget = new aspnet_User();
     75      membershipTarget = new aspnet_Membership();
    7476
    75         }
     77      if ((source != null)) {
     78        userTarget.ApplicationId = source.ApplicationId;
     79        userTarget.UserId = source.Id;
     80        userTarget.UserName = source.Name;
     81        userTarget.LoweredUserName = source.Name;
     82        userTarget.IsAnonymous = false;
     83        userTarget.LastActivityDate = source.LastActivityDate;
     84        membershipTarget.UserId = source.Id;
     85        membershipTarget.ApplicationId = source.ApplicationId;
     86        membershipTarget.PasswordFormat = 1;
     87        membershipTarget.Email = source.Email;
     88        membershipTarget.IsApproved = source.IsApproved;
     89        membershipTarget.IsLockedOut = source.IsLookedOut;
     90        membershipTarget.CreateDate = source.CreateDate;
     91        membershipTarget.LastLoginDate = source.LastLoginDate;
     92        membershipTarget.LastPasswordChangedDate = source.LastPasswordChangeDate;
     93        membershipTarget.LastLockoutDate = source.LastLockoutDate;
     94        membershipTarget.FailedPasswordAttemptCount = 0;
     95        membershipTarget.FailedPasswordAttemptWindowStart = new System.DateTime(1900, 01, 01);
     96        membershipTarget.FailedPasswordAnswerAttemptCount = 0;
     97        membershipTarget.FailedPasswordAnswerAttemptWindowStart = new System.DateTime(1900, 01, 01);
     98        membershipTarget.Comment = source.Description;
     99      }
     100    }
    76101
     102    #endregion
    77103
    78         #endregion
     104    #region Application
    79105
    80         #region Application
     106    public static Application ToDto(aspnet_Application sourceApplication) {
     107      if (sourceApplication == null) return null;
     108      return new Application() {
     109        Id = sourceApplication.ApplicationId,
     110        Name = sourceApplication.ApplicationName,
     111        Description = sourceApplication.Description
     112      };
     113    }
    81114
    82         /// <summary>
    83         /// converts data access object to data transfer object
    84         /// </summary>
    85         /// <param name="source">data access object</param>
    86         /// <returns>data transfer object</returns>
    87         public static Application ToDataTransfer(aspnet_Application source)
    88         {
    89             if (source == null) return null;
    90             return new Application()
    91             {
    92                 Id = source.ApplicationId,
    93                 Name = source.ApplicationName,
    94                 //LoweredApplicationName = source.LoweredApplicationName,
    95                 Description = source.Description
    96             };
    97         }
     115    public static void ToEntity(Application sourceApplication, aspnet_Application targetApplication) {
     116      if ((sourceApplication != null) && (targetApplication != null)) {
     117        targetApplication.ApplicationId = sourceApplication.Id;
     118        targetApplication.ApplicationName = sourceApplication.Name;
     119        targetApplication.LoweredApplicationName = sourceApplication.Name.ToLower();
     120        targetApplication.Description = sourceApplication.Description;
     121      }
     122    }
    98123
    99         /// <summary>
    100         /// converts data transfer object to data access object
    101         /// </summary>
    102         /// <param name="source">data transfer object</param>
    103         /// <param name="target">data access object</param>
    104         public static void ToEntity(Application source, aspnet_Application target)
    105         {
    106             if ((source != null) && (target != null))
    107             {
    108                 target.ApplicationId = source.Id;
    109                 target.ApplicationName = source.Name;
    110                 target.LoweredApplicationName = source.Name.ToLower();
    111                 target.Description = source.Description;
    112             }
     124    public static aspnet_Application ToEntity(Application sourceApplication) {
     125      if (sourceApplication == null) return null;
     126      return new aspnet_Application() {
     127        ApplicationId = sourceApplication.Id,
     128        ApplicationName = sourceApplication.Name,
     129        LoweredApplicationName = sourceApplication.Name.ToLower(),
     130        Description = sourceApplication.Description
     131      };
     132    }
    113133
    114         }
     134    #endregion
    115135
    116         #endregion
     136    #region Role
    117137
    118         #region Role
     138    public static Role ToDto(aspnet_Role sourceRole) {
     139      if (sourceRole == null) return null;
     140      return new Role() {
     141        ApplicationId = sourceRole.ApplicationId,
     142        Id = sourceRole.RoleId,
     143        Name = sourceRole.RoleName,
     144        Description = sourceRole.Description,
     145      };
     146    }
    119147
    120         /// <summary>
    121         /// converts data access object to data transfer object
    122         /// </summary>
    123         /// <param name="source">data access object</param>
    124         /// <returns>data transfer object</returns>
    125         public static Role ToDataTransfer(aspnet_Role source)
    126         {
    127             if (source == null) return null;
    128             return new Role()
    129             {
    130                 ApplicationId = source.ApplicationId,
    131                 Id = source.RoleId,
    132                 Name = source.RoleName,
    133                 Description = source.Description,
    134                 //LoweredRoleName = source.LoweredRoleName,
    135             };
    136         }
     148    public static void ToEntity(Role sourceRole, aspnet_Role targetRole) {
     149      if ((sourceRole != null) && (targetRole != null)) {
     150        targetRole.ApplicationId = sourceRole.ApplicationId;
     151        targetRole.RoleId = sourceRole.Id;
     152        targetRole.RoleName = sourceRole.Name;
     153        targetRole.LoweredRoleName = sourceRole.Name.ToLower();
     154        targetRole.Description = sourceRole.Description;
     155      }
     156    }
    137157
    138         /// <summary>
    139         /// converts data transfer object to data access object
    140         /// </summary>
    141         /// <param name="source">data transfer object</param>
    142         /// <param name="target">data access object</param>
    143         public static void ToEntity(Role source, aspnet_Role target)
    144         {
    145             if ((source != null) && (target != null))
    146             {
    147                 target.ApplicationId = source.ApplicationId;
    148                 target.RoleId = source.Id;
    149                 target.RoleName = source.Name;
    150                 target.LoweredRoleName = source.Name.ToLower();
    151                 target.Description = source.Description;
    152             }
     158    public static aspnet_Role ToEntity(Role sourceRole) {
     159      if (sourceRole == null) return null;
     160      return new aspnet_Role() {
     161        ApplicationId = sourceRole.ApplicationId,
     162        RoleId = sourceRole.Id,
     163        RoleName = sourceRole.Name,
     164        LoweredRoleName = sourceRole.Name.ToLower(),
     165        Description = sourceRole.Description,
     166      };
     167    }
    153168
    154         }
    155 
    156         #endregion
    157 
    158     }
     169    #endregion
     170  }
    159171}
  • branches/UserManagement/HeuristicLab.Services.Authentication/Interfaces/IAuthenticationService.cs

    r4979 r5257  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21using System;
    222using System.Collections.Generic;
    323using HeuristicLab.Services.Authentication.DataTransfer;
     
    525using System.Net.Security;
    626
    7 namespace HeuristicLab.Services.Authentication
    8 {
    9     [ServiceContract(ProtectionLevel = ProtectionLevel.EncryptAndSign)]
    10     public interface IAuthenticationService
    11     {
    12         #region User
     27namespace HeuristicLab.Services.Authentication {
     28  [ServiceContract(ProtectionLevel = ProtectionLevel.EncryptAndSign)]
     29  public interface IAuthenticationService {
    1330
    14         [OperationContract]
    15         User GetUser(Guid id);
     31    #region User
    1632
    17         [OperationContract]
    18         IEnumerable<User> GetAllUsers();
     33    [OperationContract]
     34    User GetUser(Guid id);
    1935
    20         [OperationContract]
    21         IEnumerable<User> GetUsers(Guid applicationId);
     36    [OperationContract()]
     37    IEnumerable<User> GetUsers();
    2238
    23         [OperationContract]
    24         Guid AddUser(User user);       
     39    [OperationContract()]
     40    IEnumerable<User> GetUsersForApplication(Guid applicationId);
    2541
    26         [OperationContract]
    27         bool DeleteUser(Guid id);
     42    [OperationContract]
     43    Guid AddUser(User user);
    2844
    29         [OperationContract]
    30         bool UpdateUser(User user);
     45    [OperationContract]
     46    void DeleteUser(Guid id);
    3147
    32         [OperationContract]
    33         bool AddUserToRole(Guid roleId, Guid userId);
     48    [OperationContract]
     49    void UpdateUser(User user);
    3450
    35         [OperationContract]
    36         IEnumerable<Guid> GetUsersInRole(Guid roleId);
     51    [OperationContract]
     52    void AddUserToRole(Guid roleId, Guid userId);
    3753
    38         //[OperationContract]
    39         //IEnumerable<User> GetUsersInRole(Guid roleId); // return = Guid
     54    [OperationContract]
     55    IEnumerable<Guid> GetUsersInRole(Guid roleId);
    4056
    41         [OperationContract]
    42         bool RemoveUserFromRole(Guid roleId, Guid userId);
     57    [OperationContract]
     58    void RemoveUserFromRole(Guid roleId, Guid userId);
    4359
    44         [OperationContract]
    45         bool IsUserInRole(Guid userId, Guid roleId);
     60    [OperationContract]
     61    bool IsUserInRole(Guid userId, Guid roleId);
    4662
    47         #endregion
     63    [OperationContract]
     64    User ResetPassword(string applicationName, string userName, string password);
    4865
    49         #region Role
     66    #endregion
    5067
    51         [OperationContract]
    52         Role GetRole(Guid id);
     68    #region Role
    5369
    54         [OperationContract]
    55         IEnumerable<Role> GetAllRoles();
     70    [OperationContract]
     71    Role GetRole(Guid id);
    5672
    57         [OperationContract]
    58         IEnumerable<Role> GetRoles(Guid applicationId);
     73    [OperationContract()]
     74    IEnumerable<Role> GetRoles();
    5975
    60         [OperationContract]
    61         Guid AddRole(Role role);
     76    [OperationContract()]
     77    IEnumerable<Role> GetRolesForApplication(Guid applicationId);
    6278
    63         [OperationContract]
    64         bool UpdateRole(Role role);
     79    [OperationContract]
     80    Guid AddRole(Role role);
    6581
    66         [OperationContract]
    67         bool DeleteRole(Guid id);
     82    [OperationContract]
     83    void UpdateRole(Role role);
    6884
     85    [OperationContract]
     86    void DeleteRole(Guid id);
    6987
    70         [OperationContract]
    71         IEnumerable<Guid> GetRolesForUser(Guid userId);
     88    [OperationContract]
     89    IEnumerable<Guid> GetRolesForUser(Guid userId);
    7290
     91    #endregion
    7392
    74         //[OperationContract]
    75         //IEnumerable<Role> GetRolesForUser(Guid userId);  // returnvalue = GUID
     93    #region Application
    7694
    77         #endregion
     95    [OperationContract]
     96    Application GetApplication(Guid id);
    7897
    79         #region Application
     98    [OperationContract]
     99    Guid AddApplication(Application application);
    80100
    81         [OperationContract]
    82         Application GetApplication(Guid id);
     101    [OperationContract]
     102    void DeleteApplication(Guid id);
    83103
    84         [OperationContract]
    85         Guid AddApplication(Application application); // ADD
     104    [OperationContract]
     105    IEnumerable<Application> GetApplications();
    86106
    87         [OperationContract]
    88         bool DeleteApplication(Guid id);
     107    [OperationContract]
     108    void UpdateApplication(Application application);
    89109
    90         [OperationContract]
    91         IEnumerable<DataTransfer.Application> GetApplications();
    92 
    93 
    94         [OperationContract]
    95         bool UpdateApplication(Application application);
    96 
    97         #endregion
    98 
    99        
    100     }
     110    #endregion
     111  }
    101112}
Note: See TracChangeset for help on using the changeset viewer.