| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- using Codice.Client.Common;
- using Codice.Client.Common.WebApi;
- using Codice.CM.Common;
- using PlasticGui;
- using Unity.PlasticSCM.Editor.WebApi;
- namespace Unity.PlasticSCM.Editor.ProjectDownloader
- {
- internal static class AutoConfigClientConf
- {
- internal static void FromUnityAccessToken(
- string unityAccessToken,
- RepositorySpec repSpec,
- string projectPath)
- {
- CredentialsResponse response =
- PlasticScmRestApiClient.GetCredentials(unityAccessToken);
- if (response.Error != null)
- {
- UnityEngine.Debug.LogErrorFormat(
- PlasticLocalization.GetString(PlasticLocalization.Name.ErrorGettingCredentialsCloudProject),
- response.Error.Message,
- response.Error.ErrorCode);
- return;
- }
- ClientConfigData configData = BuildClientConfigData(
- repSpec,
- projectPath,
- response);
- ClientConfig.Get().Save(configData);
- }
- static ClientConfigData BuildClientConfigData(
- RepositorySpec repSpec,
- string projectPath,
- CredentialsResponse response)
- {
- SEIDWorkingMode workingMode = SEIDWorkingMode.LDAPWorkingMode;
- ClientConfigData configData = new ClientConfigData();
- configData.WorkspaceServer = repSpec.Server;
- configData.CurrentWorkspace = projectPath;
- configData.WorkingMode = workingMode.ToString();
- configData.SecurityConfig = UserInfo.GetSecurityConfigStr(
- workingMode,
- response.Email,
- GetPassword(response.Token, response.Type));
- return configData;
- }
- static string GetPassword(
- string token,
- CredentialsResponse.TokenType tokenType)
- {
- if (tokenType == CredentialsResponse.TokenType.Bearer)
- return BEARER_PREFIX + token;
- return token;
- }
- const string BEARER_PREFIX = "Bearer ";
- }
- }
|