コード例 #1
0
 public AppMeasurement GetMeasurement(ThreeDApp app)
 {
     lock (apps)
     {
         AppMeasurement ret;
         apps.TryGetValue(app, out ret);
         return(ret);
     }
 }
コード例 #2
0
 public SceneImportContext(ThreeDApp app, StatsService statsService, StorageFileNames fileNames, MetaDataT metaData, int mainFile, FileFormat sourceFormat)
 {
     this.app          = app;
     this.statsService = statsService;
     this.fileNames    = fileNames;
     this.metaData     = metaData;
     this.sourceFormat = sourceFormat;
     this.mainFile     = mainFile;
 }
コード例 #3
0
 public AppOperation(AppOperationKind operation, string sessionId, Thread thread, ThreeDApp app)
 {
     this.Operation = operation;
     this.SessionId = sessionId;
     this.Thread    = thread;
     Start          = DateTime.Now;
     End            = DateTime.Now;
     State          = OperationState.Running;
     this.App       = app;
 }
コード例 #4
0
 public AppMeasurement CreateMeasurement(ThreeDApp app)
 {
     lock (apps)
     {
         AppMeasurement ret;
         if (!apps.TryGetValue(app, out ret))
         {
             ret = new AppMeasurement(app, statsService);
             apps.Add(app, ret);
         }
         return(ret);
     }
 }
コード例 #5
0
        public AsposeAppControllerBase(MeasurementService measurementService,
                                       StorageService storageService,
                                       ILoggerFactory loggerFactory,
                                       ThreeDApp app,
                                       StatsService statsService
                                       )
        {
            this.app           = app;
            this.statsService  = statsService;
            measurement        = measurementService.CreateMeasurement(app);
            _storageRepository = storageService.GetRepository(app.ToString().ToLower());


            _logger = loggerFactory.CreateLogger(GetType());
        }
コード例 #6
0
        public int BeforeOpenSession(ThreeDApp app, string sessionId)
        {
            if (statsServer == null)
            {
                return(-1);
            }
            var fullUrl = $"{statsServer}/stats/aspose3d/task";
            var form    = new FormUrlEncodedContent(new Dictionary <string, string>()
            {
                { "sessionId", sessionId },
                { "app", ((int)app).ToString() },
            });

            try
            {
                Func <Task <int> > req = async() =>
                {
                    var resp = await httpClient.PostAsync(fullUrl, form);

                    var content = await resp.Content.ReadAsStringAsync();

                    if (int.TryParse(content, out int ret))
                    {
                        return(ret);
                    }
                    else
                    {
                        return(-1);
                    }
                };
                var task = req();
                Task.WaitAll(new Task[] { task }, timeout);
                return(task.Result);
            }
            catch (Exception e)
            {
                logger.LogError("Failed to forward audit task to stats server", e);
                return(-1);
            }
        }
コード例 #7
0
 public AppMeasurement(ThreeDApp app, StatsService statsService)
 {
     this.app          = app;
     this.statsService = statsService;
 }