public IActionResult GetJournal()
        {
            var authtoken = User.FindFirstValue(ClaimTypes.NameIdentifier);
            var resp      = JournalUtils.ReadJournalForPlayer(authtoken);

            return(Content(JsonConvert.SerializeObject(resp), "application/json"));
        }
Beispiel #2
0
        private static VolumeMap CreateMapOfAllLocalVolumes()
        {
            VolumeMap map = JournalUtils.TryCreateMapOfAllLocalVolumes(new LoggingContext("Dummy", "Dummy"));

            XAssert.IsNotNull(map);
            return(map);
        }
Beispiel #3
0
            public static ChangeTrackerSupport Initialize(FileContentTableWithTrackerTests test)
            {
                var loggingContext   = new LoggingContext("Dummy", "Dummy");
                var fileContentTable = FileContentTable.CreateNew();

                VolumeMap volumeMap = JournalUtils.TryCreateMapOfAllLocalVolumes(loggingContext);

                XAssert.IsNotNull(volumeMap);

                var maybeJournal = JournalUtils.TryGetJournalAccessorForTest(volumeMap);

                XAssert.IsTrue(maybeJournal.Succeeded, "Could not connect to journal");

                var fileChangeTracker = FileChangeTracker.StartTrackingChanges(loggingContext, volumeMap, maybeJournal.Result, null);

                return(new ChangeTrackerSupport(
                           loggingContext,
                           test.m_pathTable,
                           fileChangeTracker,
                           fileContentTable,
                           volumeMap,
                           maybeJournal.Result,
                           AbsolutePath.Create(test.m_pathTable, test.TemporaryDirectory),
                           null));
            }
Beispiel #4
0
 public void OverlappingJunctionRoots()
 {
     List <string> junctionRoots = new List <string>()
     {
         @"c:\windows", @"c:\windows"
     };
     VolumeMap map = JournalUtils.TryCreateMapOfAllLocalVolumes(new LoggingContext("Dummy", "Dummy"), junctionRoots);
 }
Beispiel #5
0
        public void StartTracking()
        {
            var loggingContext = new LoggingContext("JournalTesting", "Dummy");

            VolumeMap volumeMap = JournalUtils.TryCreateMapOfAllLocalVolumes(loggingContext);

            XAssert.IsNotNull(volumeMap);

            var maybeJournal = JournalUtils.TryGetJournalAccessorForTest(volumeMap);

            XAssert.IsTrue(maybeJournal.Succeeded);
            m_journal = maybeJournal.Result;

            m_changeTracker = FileChangeTrackingSet.CreateForAllCapableVolumes(
                loggingContext,
                volumeMap,
                m_journal);
        }
Beispiel #6
0
        private void WithVolumeHandle(Action <SafeFileHandle> action)
        {
            VolumeMap map = JournalUtils.TryCreateMapOfAllLocalVolumes(new LoggingContext("Dummy", "Dummy"));

            XAssert.IsNotNull(map, "Failed to create a volume map");

            using (VolumeAccessor volumeAccessor = map.CreateVolumeAccessor())
            {
                SafeFileHandle directoryHandle;
                var            directoryOpenResult = FileUtilities.TryOpenDirectory(
                    TemporaryDirectory,
                    FileShare.ReadWrite | FileShare.Delete,
                    out directoryHandle);
                using (directoryHandle)
                {
                    XAssert.IsTrue(directoryOpenResult.Succeeded, "Failed to open the temporary directory to query its volume membership");

                    SafeFileHandle volumeHandle = volumeAccessor.TryGetVolumeHandle(directoryHandle);
                    XAssert.IsNotNull(volumeHandle, "Failed to open a volume handle");

                    action(volumeHandle);
                }
            }
        }