Exemplo n.º 1
0
 /// <summary>
 /// 注册项目中会使用到的数据库的代理,不能重复注册
 /// </summary>
 /// <param name="agent"></param>
 public static void RegisterAgent(IDatabaseAgent agent)
 {
     if (_agent != null)
     {
         return;
     }
     _agent = agent;
 }
Exemplo n.º 2
0
        public WebApiHost(string url, IDatabaseAgent database, IObjectsManager manager)
        {
            _logger = LogManager.GetLogger("[Assets Host]");

            _mainUrl  = url;
            _database = database;
            _manager  = manager;
        }
Exemplo n.º 3
0
        public ObjectsManager(IDatabaseAgent database, IConnection conn) : base(
                GenerateGuids.GetActorGuid(TYPEACTOR.OBJECTMANAGER), GenerateGuids.GetActorGuid(TYPEACTOR.EMPTY))
        {
            _logger   = LogManager.GetLogger("[Objects Manager]");
            _database = database;
            _conn     = conn;

            _logger.Info("is online");
        }
Exemplo n.º 4
0
        _spawnedObjects;     //todo: move to.... or keep as objects per connection?


        #region ctrors

        public ServerConnection(IDatabaseAgent database) : base(GenerateGuids.GetActorGuid(TYPEACTOR.CONNECTION),
                                                                GenerateGuids.GetActorGuid(TYPEACTOR.EMPTY))
        {
            _allClientObjects = new Dictionary <Guid, Tuple <Guid, IGameObject> >();
            _database         = database;
            _logger           = LogManager.GetLogger("[Connection]");
            _clients          = new Dictionary <Guid, IConnectionObserver>();
            _spawnedObjects   = new Dictionary <Guid, IGameObject>();
            _loadedScenes     = new Dictionary <Guid, ISceneActor>();
            _logger.Info("Server connection initialized");
        }
Exemplo n.º 5
0
        //UNUSED
        public ServerGameObject(IConnection conn, IDatabaseAgent database, string namePrefab) : base(
                GenerateGuids.GetActorGuid(TYPEACTOR.RANDOM), GenerateGuids.GetActorGuid(TYPEACTOR.EMPTY))
        {
            _clients    = new Dictionary <Guid, IGameObjectObserver>();
            _connection = conn;
            _database   = database;


            conn.SpawnGameObject(namePrefab, namePrefab, _localID, _ownerID, Guid.Empty, Guid.Empty, this,
                                 Self.ToString()).Wait();
        }
Exemplo n.º 6
0
        public ServerSceneActor(DatabaseScene dscene, IDatabaseAgent database, IConnection conn)
            : base(dscene.LocalId, GenerateGuids.GetActorGuid(TYPEACTOR.EMPTY))
        {
            _logger     = LogManager.GetLogger($"[Scene: {dscene.ServerName}]");
            _serverName = dscene.ServerName;
            _sceneName  = dscene.SceneName;
            _bundleId   = dscene.BundleId;
            _database   = database;
            _conn       = conn;

            _logger.Info("is online");
        }
Exemplo n.º 7
0
        /// <summary>
        ///     Constructs a server-side game object
        /// </summary>
        /// <param name="conn">Connection</param>
        /// <param name="database">Main DB</param>
        /// <param name="namePrefab">Prefab for owner (avatar,for example)</param>
        /// <param name="nameNotOwnedPrefab">Prefab for others (should be same if not owned)</param>
        /// <param name="localId">Object local Id</param>
        /// <param name="ownerID">Owner Id</param>
        /// <param name="bundleId">Bundle id, if object is from bundle</param>
        /// <param name="avatarId">Avatar id</param>
        /// <param name="avProps">Avatar properties. Should be JSON.</param>
        /// <param name="additionalBehavioursNamed">Additional behaviours by typename. Currently unused.</param>
        /// <param name="additionalBehaviours">Collection of additional behaviours by snapshots</param>
        public ServerGameObject(IConnection conn, IDatabaseAgent database, string namePrefab, string nameNotOwnedPrefab,
                                Guid localId, Guid ownerID,
                                Guid bundleId, Guid avatarId, Guid userId, string avProps,
                                List <string> additionalBehavioursNamed, List <JediumBehaviourSnapshot> additionalBehaviours
                                ) : base(localId, ownerID)
        {
            _log = LogManager.GetLogger("Object: " + localId + ", prefab:" + namePrefab);

            _bundleId           = bundleId;
            _avatarId           = avatarId;
            _clients            = new Dictionary <Guid, IGameObjectObserver>();
            _connection         = conn;
            _database           = database;
            _namePrefab         = namePrefab;
            _nameNotOwnedPrefab = nameNotOwnedPrefab;

            Dictionary <string, JediumBehaviourDBSnapshot> dbsnaps = _database.GetObjectBehaviours(_localID).Result;

            //and for avatar
            if (avatarId != Guid.Empty)
            {
                Dictionary <string, JediumBehaviourDBSnapshot> avsnaps = _database.GetObjectBehaviours(avatarId).Result;

                foreach (var asnap in avsnaps)
                {
                    if (!dbsnaps.ContainsKey(asnap.Key))
                    {
                        dbsnaps.Add(asnap.Key, asnap.Value);
                    }
                }

                _avatarProps = avProps;
                _userId      = userId;
            }

            _gameObject = new JediumGameObject(this, additionalBehaviours, dbsnaps, _ownerID, _localID);


            conn.SpawnGameObject(_namePrefab, _nameNotOwnedPrefab, localId, ownerID, _bundleId, avatarId, this,
                                 Self.ToString()).Wait();

            MessageNum = 0;
            _log.Info(" is online, address: " + Self);
        }
Exemplo n.º 8
0
 public ExitInterviewFactorSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
Exemplo n.º 9
0
 public InterviewGradeDeleteCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 10
0
 public PayanarApplicationSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
Exemplo n.º 11
0
        //#region 数据映射器

        //private static Dictionary<Type, IDataMapper> _mappers = new Dictionary<Type, IDataMapper>();


        //internal static IDataMapper GetMapper(Type objectType)
        //{
        //    IDataMapper mapper = null;
        //    if (_mappers.TryGetValue(objectType, out mapper)) return mapper;
        //    return null;
        //}

        ///// <summary>
        ///// 注册项目中会使用到的数据库的代理,不能重复注册
        ///// </summary>
        ///// <param name="agent"></param>
        //public static void RegisterMapper<T>(IDataMapper mapper)
        //    where T : IAggregateRoot
        //{
        //    var objectType = typeof(T);
        //    _mappers.Add(objectType, mapper);
        //}



        //#endregion



        static SqlContext()
        {
            _agent = DataAccessConfiguration.Current.GetDatabaseAgent() ?? SQLServerAgent.Instance;
        }
 public TableSequanceNumberSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
Exemplo n.º 13
0
 public TableInformationUpdateCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 14
0
 public TableSequanceNumberUpdateCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 15
0
 public ExitInterviewFactorUpdateCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
 public InterviewFormDetailsSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
 public InterviewFormHeaderInsertCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 18
0
 public EmployeeDetailUpdateCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 19
0
 public InterviewGradeSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
Exemplo n.º 20
0
 public PluginsHost(IDatabaseAgent database, IObjectsManager manager)
 {
     _logger   = LogManager.GetLogger("[Plugins Host]");
     _database = database;
     _manager  = manager;
 }
Exemplo n.º 21
0
 public CompanyInsertCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 22
0
 public EmployeeDetailSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
Exemplo n.º 23
0
 public InterviewFormHeaderUpdateCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 24
0
 public AssessmentFactorDeleteCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 25
0
        public AssetsController(IDatabaseAgent database)
        {
            _logger = LogManager.GetLogger("[Assets Controller]");

            _database = database;
        }
Exemplo n.º 26
0
 public AccessDetailsSelectCommand(IDatabaseAgent databaseAgent, string query)
     : base(databaseAgent, query)
 {
 }
Exemplo n.º 27
0
 public AssessmentFactorInsertCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 28
0
 public EmployeeDetailInsertCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 29
0
 public InterviewGradeInsertCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }
Exemplo n.º 30
0
 public CallLetterUpdateCommand(IDatabaseAgent databaseAgent)
     : base(databaseAgent)
 {
 }