/// <summary> /// Fills Permission object /// </summary> /// <param name="permissionObject">The object to be filled</param> /// <param name="reader">The reader to use to fill a single object</param> /// <param name="start">The ordinal position from which to start reading the reader</param> protected void FillObject(PermissionBase permissionObject, SqlDataReader reader, int start) { permissionObject.Id = reader.GetInt32(start + 0); permissionObject.CompanyId = reader.GetGuid(start + 1); if (!reader.IsDBNull(2)) { permissionObject.ParentId = reader.GetInt32(start + 2); } if (!reader.IsDBNull(3)) { permissionObject.Name = reader.GetString(start + 3); } if (!reader.IsDBNull(4)) { permissionObject.DisplayText = reader.GetString(start + 4); } if (!reader.IsDBNull(5)) { permissionObject.IsActive = reader.GetBoolean(start + 5); } FillBaseObject(permissionObject, reader, (start + 6)); permissionObject.RowState = BaseBusinessEntity.RowStateEnum.NormalRow; }
/// <summary> /// Add common parameters before calling a procedure /// </summary> /// <param name="cmd">command object, where parameters will be added</param> /// <param name="permissionObject"></param> private void AddCommonParams(SqlCommand cmd, PermissionBase permissionObject) { AddParameter(cmd, pGuid(PermissionBase.Property_CompanyId, permissionObject.CompanyId)); AddParameter(cmd, pInt32(PermissionBase.Property_ParentId, permissionObject.ParentId)); AddParameter(cmd, pNVarChar(PermissionBase.Property_Name, 500, permissionObject.Name)); AddParameter(cmd, pNVarChar(PermissionBase.Property_DisplayText, 500, permissionObject.DisplayText)); AddParameter(cmd, pBool(PermissionBase.Property_IsActive, permissionObject.IsActive)); }
/// <summary> /// Updates Permission /// </summary> /// <param name="permissionObject">Object to be updated</param> /// <returns>Number of rows affected</returns> public long Update(PermissionBase permissionObject) { try { SqlCommand cmd = GetSPCommand(UPDATEPERMISSION); AddParameter(cmd, pInt32(PermissionBase.Property_Id, permissionObject.Id)); AddCommonParams(cmd, permissionObject); long result = UpdateRecord(cmd); if (result > 0) { permissionObject.RowState = BaseBusinessEntity.RowStateEnum.NormalRow; } return(result); } catch (SqlException x) { throw new ObjectUpdateException(permissionObject, x); } }
/// <summary> /// Fills Permission object /// </summary> /// <param name="permissionObject">The object to be filled</param> /// <param name="reader">The reader to use to fill a single object</param> protected void FillObject(PermissionBase permissionObject, SqlDataReader reader) { FillObject(permissionObject, reader, 0); }
public static List <PermissionBase> SetupDefaultPermissionList(Context context) { List <PermissionBase> permissionList = new List <PermissionBase>(); PermissionBase permission = null; //set up each required permission //REQUEST_CODE_PERMISSION_READ_CONTACTS permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_READ_CONTACTS; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.ReadContacts; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.READ_CONTACTS); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_USE_MICROPHONE permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_USE_MICROPHONE; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.UseMicrophone; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.USE_MICROPHONE); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_WRITE_SMS permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_WRITE_SMS; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.WriteSms; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.WRITE_SMS); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_SEND_SMS permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_SEND_SMS; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.SendSms; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.SEND_SMS); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_MAKE_CALLS permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_MAKE_CALLS; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.MakeCalls; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.MAKE_CALLS); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_MODIFY_AUDIO_SETTINGS - Normal permission that is automatically granted //REQUEST_CODE_PERMISSION_READ_EXTERNAL_STORAGE permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_READ_EXTERNAL_STORAGE; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.ReadExternalStorage; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.READ_EXTERNAL_STORAGE); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_READ_PHONE_STATE permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_READ_PHONE_STATE; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.ReadPhoneState; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.READ_PHONE_STATE); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_READ_PROFILE permission = new PermissionBase(); permission.PermissionType = ConstantsAndTypes.REQUEST_CODE_PERMISSION_READ_PROFILE; permission.ApplicationPermission = ConstantsAndTypes.AppPermission.ReadProfile; permission.PermissionGranted = CheckPermission(context, ConstantsAndTypes.READ_PROFILE); permissionList.Add(permission); //REQUEST_CODE_PERMISSION_RECEIVE_BOOT_COMPLETED - Normal permission that is automatically granted //REQUEST_CODE_PERMISSION_SET_ALARM - Normal permission that is automatically granted //REQUEST_CODE_PERMISSION_WAKE_LOCK - Normal permission that is automatically granted return(permissionList); }