Merge pull request #1187 from ralarcon/Issue881_SideBySide
Improve side by side synchronization
This commit is contained in:
Коммит
714ebd7936
|
@ -41,6 +41,10 @@ namespace Microsoft.Templates.Core.Locations
|
|||
ForcedAcquisition = forcedAdquisition;
|
||||
LocalTemplatesVersion = templatesVersion;
|
||||
LocalWizardVersion = wizardVersion;
|
||||
if (string.IsNullOrEmpty(_id))
|
||||
{
|
||||
_id = Configuration.Current.Environment;
|
||||
}
|
||||
}
|
||||
|
||||
protected override string AcquireMstx()
|
||||
|
|
|
@ -25,6 +25,12 @@ namespace Microsoft.Templates.Core.Locations
|
|||
|
||||
private readonly TemplatesContent _content;
|
||||
|
||||
private static object syncLock = new object();
|
||||
|
||||
private readonly TimeSpan instanceSyncWait = new TimeSpan(0, 0, 5);
|
||||
|
||||
private readonly TimeSpan instanceMaxSyncWait = new TimeSpan(0, 0, 30);
|
||||
|
||||
public string WorkingFolder => _workingFolder.Value;
|
||||
|
||||
public string CurrentTemplatesFolder { get => _content?.TemplatesFolder; }
|
||||
|
@ -35,7 +41,6 @@ namespace Microsoft.Templates.Core.Locations
|
|||
|
||||
public Version CurrentWizardVersion { get; private set; }
|
||||
|
||||
private static object syncLock = new object();
|
||||
public static bool SyncInProgress { get; private set; }
|
||||
|
||||
public TemplatesSynchronization(TemplatesSource source, Version wizardVersion)
|
||||
|
@ -47,6 +52,8 @@ namespace Microsoft.Templates.Core.Locations
|
|||
|
||||
public async Task DoAsync()
|
||||
{
|
||||
await EnsureVsInstancesSyncingAsync();
|
||||
|
||||
if (LockSync())
|
||||
{
|
||||
try
|
||||
|
@ -275,16 +282,73 @@ namespace Microsoft.Templates.Core.Locations
|
|||
{
|
||||
return false;
|
||||
}
|
||||
SetInstanceSyncLock();
|
||||
SyncInProgress = true;
|
||||
return true;
|
||||
return SyncInProgress;
|
||||
}
|
||||
}
|
||||
|
||||
private void UnlockSync()
|
||||
{
|
||||
lock (syncLock)
|
||||
{
|
||||
SyncInProgress = false;
|
||||
RemoveInstanceSyncLock();
|
||||
}
|
||||
}
|
||||
private async Task EnsureVsInstancesSyncingAsync()
|
||||
{
|
||||
while (IsOtherInstanceSyncing())
|
||||
{
|
||||
await AppHealth.Current.Info.TrackAsync(StringRes.TemplatesSynchronizationWaitingOtherInstanceMessage);
|
||||
await Task.Delay(instanceSyncWait);
|
||||
}
|
||||
}
|
||||
|
||||
private bool IsOtherInstanceSyncing()
|
||||
{
|
||||
try
|
||||
{
|
||||
FileInfo fileInfo = new FileInfo(Path.Combine(CurrentTemplatesFolder, ".lock"));
|
||||
return fileInfo.Exists && DateTime.Now < fileInfo.CreationTime.Add(instanceMaxSyncWait);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
AppHealth.Current.Warning.TrackAsync(StringRes.TemplatesSynchronizationWarnReadingLockFileMessage, ex).FireAndForget();
|
||||
|
||||
// No matter the exception. If there is one, we behave exactly the same as if we don't have instance syncronization exclusion.
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private void SetInstanceSyncLock()
|
||||
{
|
||||
try
|
||||
{
|
||||
FileInfo fileInfo = new FileInfo(Path.Combine(CurrentTemplatesFolder, ".lock"));
|
||||
if (fileInfo.Exists)
|
||||
{
|
||||
fileInfo.Delete();
|
||||
}
|
||||
File.WriteAllText(fileInfo.FullName, "Instance syncing");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
AppHealth.Current.Warning.TrackAsync(StringRes.TemplatesSynchronizationWarnCreatingLockFileMessage, ex).FireAndForget();
|
||||
}
|
||||
}
|
||||
private void RemoveInstanceSyncLock()
|
||||
{
|
||||
try
|
||||
{
|
||||
FileInfo fileInfo = new FileInfo(Path.Combine(CurrentTemplatesFolder, ".lock"));
|
||||
if (fileInfo.Exists)
|
||||
{
|
||||
fileInfo.Delete();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
AppHealth.Current.Warning.TrackAsync(StringRes.TemplatesSynchronizationWarnDeletingLockFileMessage, ex).FireAndForget();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
// Este código fue generado por una herramienta.
|
||||
// Versión de runtime:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// Los cambios en este archivo podrían causar un comportamiento incorrecto y se perderán si
|
||||
// se vuelve a generar el código.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
@ -13,12 +13,12 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
|
||||
|
||||
/// <summary>
|
||||
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||
/// Clase de recurso fuertemente tipado, para buscar cadenas traducidas, etc.
|
||||
/// </summary>
|
||||
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
// StronglyTypedResourceBuilder generó automáticamente esta clase
|
||||
// a través de una herramienta como ResGen o Visual Studio.
|
||||
// Para agregar o quitar un miembro, edite el archivo .ResX y, a continuación, vuelva a ejecutar ResGen
|
||||
// con la opción /str o recompile su proyecto de VS.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
|
@ -33,7 +33,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the cached ResourceManager instance used by this class.
|
||||
/// Devuelve la instancia de ResourceManager almacenada en caché utilizada por esta clase.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
|
@ -47,8 +47,8 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overrides the current thread's CurrentUICulture property for all
|
||||
/// resource lookups using this strongly typed resource class.
|
||||
/// Reemplaza la propiedad CurrentUICulture del subproceso actual para todas las
|
||||
/// búsquedas de recursos mediante esta clase de recurso fuertemente tipado.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
|
@ -61,7 +61,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Additional Message.
|
||||
/// Busca una cadena traducida similar a Additional Message.
|
||||
/// </summary>
|
||||
internal static string AdditionalMessageString {
|
||||
get {
|
||||
|
@ -70,7 +70,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Addtional Exception Info.
|
||||
/// Busca una cadena traducida similar a Addtional Exception Info.
|
||||
/// </summary>
|
||||
internal static string AddtionalExceptionInfoString {
|
||||
get {
|
||||
|
@ -79,7 +79,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Assembly File Version.
|
||||
/// Busca una cadena traducida similar a Assembly File Version.
|
||||
/// </summary>
|
||||
internal static string AssemblyFileVersionString {
|
||||
get {
|
||||
|
@ -88,7 +88,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The query "{0}" is not valid. Allowed operators are '==' or '!='. Multiple conditions are separated by '&'..
|
||||
/// Busca una cadena traducida similar a The query "{0}" is not valid. Allowed operators are '==' or '!='. Multiple conditions are separated by '&'..
|
||||
/// </summary>
|
||||
internal static string CompositionQueryParseMessage {
|
||||
get {
|
||||
|
@ -97,7 +97,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Configuration file loaded.
|
||||
/// Busca una cadena traducida similar a Configuration file loaded.
|
||||
/// </summary>
|
||||
internal static string ConfigurationFileLoadedString {
|
||||
get {
|
||||
|
@ -106,7 +106,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Current content expiration.
|
||||
/// Busca una cadena traducida similar a Current content expiration.
|
||||
/// </summary>
|
||||
internal static string CurrentContentExpirationString {
|
||||
get {
|
||||
|
@ -115,7 +115,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Exception Info.
|
||||
/// Busca una cadena traducida similar a Exception Info.
|
||||
/// </summary>
|
||||
internal static string ExceptionInfoString {
|
||||
get {
|
||||
|
@ -124,7 +124,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Exception.
|
||||
/// Busca una cadena traducida similar a Exception.
|
||||
/// </summary>
|
||||
internal static string ExceptionString {
|
||||
get {
|
||||
|
@ -133,7 +133,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Exception Tracked.
|
||||
/// Busca una cadena traducida similar a Exception Tracked.
|
||||
/// </summary>
|
||||
internal static string ExceptionTrackedString {
|
||||
get {
|
||||
|
@ -142,7 +142,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Could not find file '{0}' to include the following changes. Please review the code blocks to include the changes manually where required in your project. .
|
||||
/// Busca una cadena traducida similar a Could not find file '{0}' to include the following changes. Please review the code blocks to include the changes manually where required in your project. .
|
||||
/// </summary>
|
||||
internal static string FailedMergePostActionFileNotFound {
|
||||
get {
|
||||
|
@ -151,7 +151,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Could not find the expected line `{0}` in file '{1}'. Please merge the content from the postaction file manually..
|
||||
/// Busca una cadena traducida similar a Could not find the expected line `{0}` in file '{1}'. Please merge the content from the postaction file manually..
|
||||
/// </summary>
|
||||
internal static string FailedMergePostActionLineNotFound {
|
||||
get {
|
||||
|
@ -160,7 +160,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The folder {0} can't be copied to {1}. Error: {2}.
|
||||
/// Busca una cadena traducida similar a The folder {0} can't be copied to {1}. Error: {2}.
|
||||
/// </summary>
|
||||
internal static string FsSafeCopyFileMessage {
|
||||
get {
|
||||
|
@ -169,7 +169,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The folder {0} can't be delete. Error: {1}.
|
||||
/// Busca una cadena traducida similar a The folder {0} can't be delete. Error: {1}.
|
||||
/// </summary>
|
||||
internal static string FsSafeDeleteDirectoryMessage {
|
||||
get {
|
||||
|
@ -178,7 +178,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The file {0} can't be delete. Error: {1}.
|
||||
/// Busca una cadena traducida similar a The file {0} can't be delete. Error: {1}.
|
||||
/// </summary>
|
||||
internal static string FsSafeDeleteFileMessage {
|
||||
get {
|
||||
|
@ -187,7 +187,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The folder {0} can't be moved to {1}. Error: {2}.
|
||||
/// Busca una cadena traducida similar a The folder {0} can't be moved to {1}. Error: {2}.
|
||||
/// </summary>
|
||||
internal static string FsSafeMoveDirectoryMessage {
|
||||
get {
|
||||
|
@ -196,7 +196,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Critical error initializating GenContext..
|
||||
/// Busca una cadena traducida similar a Critical error initializating GenContext..
|
||||
/// </summary>
|
||||
internal static string GenContextBootstrapError {
|
||||
get {
|
||||
|
@ -205,7 +205,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to There is no context for the current gen execution, call Current_set first.
|
||||
/// Busca una cadena traducida similar a There is no context for the current gen execution, call Current_set first.
|
||||
/// </summary>
|
||||
internal static string GenContextCurrentInvalidOperationMessage {
|
||||
get {
|
||||
|
@ -214,7 +214,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Error generating certificate..
|
||||
/// Busca una cadena traducida similar a Error generating certificate..
|
||||
/// </summary>
|
||||
internal static string GenerateTestCertificatePostActionExecute {
|
||||
get {
|
||||
|
@ -223,7 +223,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Log started.
|
||||
/// Busca una cadena traducida similar a Log started.
|
||||
/// </summary>
|
||||
internal static string LogStartedString {
|
||||
get {
|
||||
|
@ -232,7 +232,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to *Recommended Markdown viewer: [Markdown Editor VS Extension](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.MarkdownEditor)*.
|
||||
/// Busca una cadena traducida similar a *Recommended Markdown viewer: [Markdown Editor VS Extension](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.MarkdownEditor)*.
|
||||
/// </summary>
|
||||
internal static string MarkdownHeader {
|
||||
get {
|
||||
|
@ -241,7 +241,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to There is no merge target for file '{0}'.
|
||||
/// Busca una cadena traducida similar a There is no merge target for file '{0}'.
|
||||
/// </summary>
|
||||
internal static string MergeFileNotFoundExceptionMessage {
|
||||
get {
|
||||
|
@ -250,7 +250,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Line {0} not found in file '{1}'.
|
||||
/// Busca una cadena traducida similar a Line {0} not found in file '{1}'.
|
||||
/// </summary>
|
||||
internal static string MergeLineNotFoundExceptionMessage {
|
||||
get {
|
||||
|
@ -259,7 +259,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to There is no merge target for file '{0}'.
|
||||
/// Busca una cadena traducida similar a There is no merge target for file '{0}'.
|
||||
/// </summary>
|
||||
internal static string MergePostActionExecuteMessage {
|
||||
get {
|
||||
|
@ -268,7 +268,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Unable to infer a name. Too many iterations.
|
||||
/// Busca una cadena traducida similar a Unable to infer a name. Too many iterations.
|
||||
/// </summary>
|
||||
internal static string NamingInferMessage {
|
||||
get {
|
||||
|
@ -277,7 +277,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Package certificate.
|
||||
/// Busca una cadena traducida similar a Package certificate.
|
||||
/// </summary>
|
||||
internal static string PackageCertificateString {
|
||||
get {
|
||||
|
@ -286,7 +286,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Error downloading from {0}. Internet connection is required to download template updates..
|
||||
/// Busca una cadena traducida similar a Error downloading from {0}. Internet connection is required to download template updates..
|
||||
/// </summary>
|
||||
internal static string RemoteTemplatesSourceDownloadContentKoErrorMessage {
|
||||
get {
|
||||
|
@ -295,7 +295,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Templates content can't be downloaded right now, we will try it later..
|
||||
/// Busca una cadena traducida similar a Templates content can't be downloaded right now, we will try it later..
|
||||
/// </summary>
|
||||
internal static string RemoteTemplatesSourceDownloadContentKoInfoMessage {
|
||||
get {
|
||||
|
@ -304,7 +304,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Templates content downloaded to {0} from {1}..
|
||||
/// Busca una cadena traducida similar a Templates content downloaded to {0} from {1}..
|
||||
/// </summary>
|
||||
internal static string RemoteTemplatesSourceDownloadContentOkMessage {
|
||||
get {
|
||||
|
@ -313,7 +313,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Error syncing templates. Status:.
|
||||
/// Busca una cadena traducida similar a Error syncing templates. Status:.
|
||||
/// </summary>
|
||||
internal static string RepositorySynchronizationExceptionMessage {
|
||||
get {
|
||||
|
@ -322,7 +322,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Adding items to project ....
|
||||
/// Busca una cadena traducida similar a Adding items to project ....
|
||||
/// </summary>
|
||||
internal static string StatusAddingItems {
|
||||
get {
|
||||
|
@ -331,7 +331,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Opening generated files ....
|
||||
/// Busca una cadena traducida similar a Opening generated files ....
|
||||
/// </summary>
|
||||
internal static string StatusOpeningItems {
|
||||
get {
|
||||
|
@ -340,7 +340,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Steps to include new item generation.md.
|
||||
/// Busca una cadena traducida similar a Steps to include new item generation.md.
|
||||
/// </summary>
|
||||
internal static string SyncInstructionsFileName {
|
||||
get {
|
||||
|
@ -349,7 +349,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## Conflicting files:
|
||||
/// Busca una cadena traducida similar a ## Conflicting files:
|
||||
///These files already exist in your project and were also generated as part of the new item.
|
||||
///Please compare and make sure everything is in the right place:
|
||||
///{0}.
|
||||
|
@ -361,7 +361,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## Modified files:
|
||||
/// Busca una cadena traducida similar a ## Modified files:
|
||||
///To integrate your new item with the existing project apply the following changes:
|
||||
///{0}.
|
||||
/// </summary>
|
||||
|
@ -372,7 +372,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## New files:
|
||||
/// Busca una cadena traducida similar a ## New files:
|
||||
///Copy and add the following files to your project:
|
||||
///{0}.
|
||||
/// </summary>
|
||||
|
@ -383,7 +383,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## Unchanged files:
|
||||
/// Busca una cadena traducida similar a ## Unchanged files:
|
||||
///These files already exist in your project, no action is necessary:
|
||||
///{0}.
|
||||
/// </summary>
|
||||
|
@ -394,7 +394,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to *Recommended Markdown viewer: [Markdown Editor VS Extension](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.MarkdownEditor)*
|
||||
/// Busca una cadena traducida similar a *Recommended Markdown viewer: [Markdown Editor VS Extension](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.MarkdownEditor)*
|
||||
///
|
||||
///# Steps to include new item generation
|
||||
///Please follow the instructions to include the new item into you project:
|
||||
|
@ -413,7 +413,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to
|
||||
/// Busca una cadena traducida similar a
|
||||
///### Changes required in file '{0}':
|
||||
///{1}
|
||||
///Preview the changes in: {2}.
|
||||
|
@ -425,7 +425,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to GenerationSummary.md.
|
||||
/// Busca una cadena traducida similar a GenerationSummary.md.
|
||||
/// </summary>
|
||||
internal static string SyncSummaryFileName {
|
||||
get {
|
||||
|
@ -434,7 +434,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ProjectFile.
|
||||
/// Busca una cadena traducida similar a ProjectFile.
|
||||
/// </summary>
|
||||
internal static string SyncSummaryProjectFile {
|
||||
get {
|
||||
|
@ -443,7 +443,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## Conflicting files:
|
||||
/// Busca una cadena traducida similar a ## Conflicting files:
|
||||
///These files already exist in your project and were also generated as part of the new item.
|
||||
///Please compare and make sure everything is in the right place.
|
||||
///{0}.
|
||||
|
@ -455,7 +455,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## Failed changes in files:
|
||||
/// Busca una cadena traducida similar a ## Failed changes in files:
|
||||
///Merges in the following files failed:
|
||||
///{0}.
|
||||
/// </summary>
|
||||
|
@ -466,7 +466,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## Modified files:
|
||||
/// Busca una cadena traducida similar a ## Modified files:
|
||||
///The following changes have been applied:
|
||||
///{0}.
|
||||
/// </summary>
|
||||
|
@ -477,7 +477,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to ## New files:
|
||||
/// Busca una cadena traducida similar a ## New files:
|
||||
///These files have been added to your project.
|
||||
///{0}.
|
||||
/// </summary>
|
||||
|
@ -488,7 +488,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Temp.
|
||||
/// Busca una cadena traducida similar a Temp.
|
||||
/// </summary>
|
||||
internal static string SyncSummaryTempGenerationFile {
|
||||
get {
|
||||
|
@ -497,7 +497,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to *Recommended Markdown viewer: [Markdown Editor VS Extension](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.MarkdownEditor)*
|
||||
/// Busca una cadena traducida similar a *Recommended Markdown viewer: [Markdown Editor VS Extension](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.MarkdownEditor)*
|
||||
///
|
||||
///# Generation summary
|
||||
///The following changes have been incorporated into your project:
|
||||
|
@ -516,7 +516,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to
|
||||
/// Busca una cadena traducida similar a
|
||||
///### Changes in file '{0}':
|
||||
///The following changes could not be integrated: {2}
|
||||
///{1}.
|
||||
|
@ -528,7 +528,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to
|
||||
/// Busca una cadena traducida similar a
|
||||
///### Changes in file '{0}':
|
||||
///See the final result: {2}
|
||||
///
|
||||
|
@ -541,7 +541,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Invalid digital signatures in '{0}'. The content has been tampered or the certificate is not present, not valid or not allowed. Unable to continue..
|
||||
/// Busca una cadena traducida similar a Invalid digital signatures in '{0}'. The content has been tampered or the certificate is not present, not valid or not allowed. Unable to continue..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageExtractMessage {
|
||||
get {
|
||||
|
@ -550,7 +550,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Found {0} certificates matching the thumbprint {1} in the store {2}.
|
||||
/// Busca una cadena traducida similar a Found {0} certificates matching the thumbprint {1} in the store {2}.
|
||||
/// </summary>
|
||||
internal static string TemplatePackageFindCertificateFoundMessage {
|
||||
get {
|
||||
|
@ -559,7 +559,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The certificate found does not have private key..
|
||||
/// Busca una cadena traducida similar a The certificate found does not have private key..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageFindCertificateNoPkMessage {
|
||||
get {
|
||||
|
@ -568,7 +568,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to More than one certificate found matching the thumbrint. Returning the first one..
|
||||
/// Busca una cadena traducida similar a More than one certificate found matching the thumbrint. Returning the first one..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageFindCertificateNotOneMessage {
|
||||
get {
|
||||
|
@ -577,7 +577,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The specified source '{0}' is invalid, the file does not exist, or the folder is empty..
|
||||
/// Busca una cadena traducida similar a The specified source '{0}' is invalid, the file does not exist, or the folder is empty..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageGetSourceFilesMessage {
|
||||
get {
|
||||
|
@ -586,7 +586,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to No certificate found matching the thumbrint {0}. Searched on CurrentUser/My and LocalMachine/My stores..
|
||||
/// Busca una cadena traducida similar a No certificate found matching the thumbrint {0}. Searched on CurrentUser/My and LocalMachine/My stores..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageLoadCertMessage {
|
||||
get {
|
||||
|
@ -595,7 +595,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The certificate with thumbprint {0} can't be found in CurrentUser/My or LocalMachine/My..
|
||||
/// Busca una cadena traducida similar a The certificate with thumbprint {0} can't be found in CurrentUser/My or LocalMachine/My..
|
||||
/// </summary>
|
||||
internal static string TemplatePackagePackAndSignMessage {
|
||||
get {
|
||||
|
@ -604,7 +604,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Error signing package..
|
||||
/// Busca una cadena traducida similar a Error signing package..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageSignAllPartsMessage {
|
||||
get {
|
||||
|
@ -613,7 +613,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Package signature certificate validation not passed..
|
||||
/// Busca una cadena traducida similar a Package signature certificate validation not passed..
|
||||
/// </summary>
|
||||
internal static string TemplatePackageValidatePackageCertificatesMessage {
|
||||
get {
|
||||
|
@ -622,7 +622,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Certificate '{0}' verification finished with status '{1}'.
|
||||
/// Busca una cadena traducida similar a Certificate '{0}' verification finished with status '{1}'.
|
||||
/// </summary>
|
||||
internal static string TemplatePackageVerifyCertificateMessage {
|
||||
get {
|
||||
|
@ -631,7 +631,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Templates extracted to.
|
||||
/// Busca una cadena traducida similar a Templates extracted to.
|
||||
/// </summary>
|
||||
internal static string TemplatesContentExtractedToString {
|
||||
get {
|
||||
|
@ -640,7 +640,7 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to The templates can't be extracted..
|
||||
/// Busca una cadena traducida similar a The templates can't be extracted..
|
||||
/// </summary>
|
||||
internal static string TemplatesSourceExtractContentMessage {
|
||||
get {
|
||||
|
@ -649,12 +649,48 @@ namespace Microsoft.Templates.Core.Resources {
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Unable to purge old content..
|
||||
/// Busca una cadena traducida similar a Unable to purge old content..
|
||||
/// </summary>
|
||||
internal static string TemplatesSynchronizationPurgeContentAsyncMessage {
|
||||
get {
|
||||
return ResourceManager.GetString("TemplatesSynchronizationPurgeContentAsyncMessage", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Busca una cadena traducida similar a Other instance is syncing templates... Waiting 5 seconds..
|
||||
/// </summary>
|
||||
internal static string TemplatesSynchronizationWaitingOtherInstanceMessage {
|
||||
get {
|
||||
return ResourceManager.GetString("TemplatesSynchronizationWaitingOtherInstanceMessage", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Busca una cadena traducida similar a Error creating the instance locking file..
|
||||
/// </summary>
|
||||
internal static string TemplatesSynchronizationWarnCreatingLockFileMessage {
|
||||
get {
|
||||
return ResourceManager.GetString("TemplatesSynchronizationWarnCreatingLockFileMessage", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Busca una cadena traducida similar a Error deleting the instance locking file..
|
||||
/// </summary>
|
||||
internal static string TemplatesSynchronizationWarnDeletingLockFileMessage {
|
||||
get {
|
||||
return ResourceManager.GetString("TemplatesSynchronizationWarnDeletingLockFileMessage", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Busca una cadena traducida similar a Error reading the instance locking file..
|
||||
/// </summary>
|
||||
internal static string TemplatesSynchronizationWarnReadingLockFileMessage {
|
||||
get {
|
||||
return ResourceManager.GetString("TemplatesSynchronizationWarnReadingLockFileMessage", resourceCulture);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -372,4 +372,16 @@ The following changes could not be integrated: {2}
|
|||
<data name="SyncSummaryProjectFile" xml:space="preserve">
|
||||
<value>ProjectFile</value>
|
||||
</data>
|
||||
<data name="TemplatesSynchronizationWaitingOtherInstanceMessage" xml:space="preserve">
|
||||
<value>Other instance is syncing templates... Waiting 5 seconds.</value>
|
||||
</data>
|
||||
<data name="TemplatesSynchronizationWarnCreatingLockFileMessage" xml:space="preserve">
|
||||
<value>Error creating the instance locking file.</value>
|
||||
</data>
|
||||
<data name="TemplatesSynchronizationWarnDeletingLockFileMessage" xml:space="preserve">
|
||||
<value>Error deleting the instance locking file.</value>
|
||||
</data>
|
||||
<data name="TemplatesSynchronizationWarnReadingLockFileMessage" xml:space="preserve">
|
||||
<value>Error reading the instance locking file.</value>
|
||||
</data>
|
||||
</root>
|
Загрузка…
Ссылка в новой задаче