コード例 #1
0
        public async Task <IActionResult> Edit(int id, [Bind("ImageTitle,Text,SubText,AboutId,Id,ImagePath,Title,SubTitle")] Compliance compliance)
        {
            if (id != compliance.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(compliance);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ComplianceExists(compliance.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AboutId"] = new SelectList(_context.Abouts, "Id", "Id", compliance.AboutId);
            return(View(compliance));
        }
コード例 #2
0
        public ViewResult ApproveCompliance(int id)
        {
            Compliance claim = db.Compliances.Find(id);


            return(View(claim));
        }
コード例 #3
0
        public async Task <IActionResult> Create([Bind("ImageTitle,Text,SubText,AboutId,Id,ImagePath,Title,SubTitle")] Compliance compliance, IFormFile ImagePath)
        {
            CustomDateTimeFile customDateTimeFile = new CustomDateTimeFile();
            string             fileName           = customDateTimeFile.GetFileName(ImagePath.FileName);

            if (ModelState.IsValid)
            {
                compliance.ImagePath = fileName;
                if (_IsAcceptedFormat(ImagePath.ContentType))
                {
                    string path = Path.Combine(hostingEnvironment.WebRootPath, "images", fileName);
                    byte[] data = new byte[ImagePath.Length];

                    using (FileStream fileStream = new FileStream(path, FileMode.Create))
                    {
                        await ImagePath.CopyToAsync(fileStream);
                    }
                }
                await _context.AddAsync(compliance);

                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AboutId"] = new SelectList(_context.Abouts, "Id", "Id", compliance.AboutId);
            return(View(compliance));
        }
コード例 #4
0
    private static void GetDefaultAgeBand(SiteConfigurationData siteConfig, out ConfigurationAgeBand configurationAgeBand, out string configurationAgeBandKey)
    {
        Compliance compliance = siteConfig.compliance;

        configurationAgeBand    = DictionaryUtils.TryGetValue(compliance.ageBands, compliance.defaultAgeBand);
        configurationAgeBandKey = compliance.defaultAgeBand;
    }
コード例 #5
0
        public ViewResult ViewApproval(int id)
        {
            Compliance comp = db.Compliances.Find(id);


            return(View(comp));
        }
コード例 #6
0
        public IV_Data[] ListCurrentSweep(double[] sweepList)
        {
            var stringList = "{";

            for (int i = 0; i < sweepList.Length - 1; i++)
            {
                stringList += sweepList[i].ToString(NumberFormatInfo.InvariantInfo) + ", ";
            }
            stringList += sweepList[sweepList.Length - 1] + "}";

            _driver.SendCommandRequest(string.Format("DCSweepIList_smu{0}({1}, {2}, {3}, {4})",
                                                     ChannelIdentifier,
                                                     stringList,
                                                     sweepList.Length.ToString(NumberFormatInfo.InvariantInfo),
                                                     Compliance.ToString(NumberFormatInfo.InvariantInfo),
                                                     NPLC.ToString(NumberFormatInfo.InvariantInfo)));

            var result = new IV_Data[sweepList.Length];

            for (int i = 0; i < result.Length; i++)
            {
                result[i] = new IV_Data(_driver.ReceiveDeviceAnswer());
            }

            return(result);
        }
コード例 #7
0
        public void TestShortHeader()
        {
            CastDate currentDate = new CastDate {
                Time = 1484953200000
            };
            CastDate previousDate = new CastDate {
                Time = 1484866800000
            };
            ReportData reportData = TestUtility.PrepareApplicationReportData("ReportGenerator",
                                                                             null, @".\Data\CurrentBCresults.json", "AED/applications/3/snapshots/6", "PreVersion 1.5.0 sprint 2 shot 2", "V-1.5.0_Sprint 2_2", currentDate,
                                                                             null, @".\Data\PreviousBCresults.json", "AED/applications/3/snapshots/3", "PreVersion 1.4.1 before release", "V-1.4.1", previousDate);

            var component = new Compliance();
            Dictionary <string, string> config = new Dictionary <string, string>
            {
                { "HEADER", "SHORT" }
            };
            var table = component.Content(reportData, config);

            var expectedData = new List <string>();

            expectedData.AddRange(new List <string> {
                "", "Prog.", "Arch.", "Doc."
            });
            expectedData.AddRange(new List <string> {
                "V-1.5.0_Sprint 2_2", "2.93", "2.10", "2.65"
            });
            expectedData.AddRange(new List <string> {
                "V-1.4.1", "2.91", "2.10", "2.47"
            });
            expectedData.AddRange(new List <string> {
                "Variation", "+0.88 %", "-0.20 %", "+7.60 %"
            });
            TestUtility.AssertTableContent(table, expectedData, 4, 4);
        }
コード例 #8
0
        public IActionResult Compliance()
        {
            ViewBag.Setting = _toursDbContext.Settings.First();
            Compliance model = _toursDbContext.Compliances.FirstOrDefault();

            return(View(model));
        }
コード例 #9
0
        public ActionResult DeleteConfirmed(int id)
        {
            Compliance compliance = db.Compliance.Find(id);

            db.Compliance.Remove(compliance);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #10
0
        public ActionResult Create()
        {
            var compliance = new Compliance();
            var name       = ComplianceName();

            compliance.Names  = GetComplianceListItems(name);
            ViewBag.StudentID = new SelectList(db.Students, "ID", "StudentNumber");
            return(View(compliance));
        }
コード例 #11
0
 public ActionResult Edit([Bind(Include = "Compliance_Id,CompanyName,RegistrationNo,EmployerId")] Compliance compliance)
 {
     if (ModelState.IsValid)
     {
         db.Entry(compliance).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(compliance));
 }
コード例 #12
0
 public ActionResult Edit([Bind(Include = "Id,Name")] Compliance compliance)
 {
     if (ModelState.IsValid)
     {
         db.Entry(compliance).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(compliance));
 }
コード例 #13
0
 public static PSSecurityCompliance ConvertToPSType(this Compliance value)
 {
     return(new PSSecurityCompliance()
     {
         Id = value.Id,
         Name = value.Name,
         AssessmentTimestampUtcDate = value.AssessmentTimestampUtcDate.Value,
         ResourceCount = value.ResourceCount.Value,
         AssessmentResult = value.AssessmentResult.ConvertToPSType()
     });
 }
コード例 #14
0
        public ActionResult Create([Bind(Include = "Id,Name")] Compliance compliance)
        {
            if (ModelState.IsValid)
            {
                db.Compliance.Add(compliance);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(compliance));
        }
コード例 #15
0
        public ActionResult ComplianceApproval(int?id)
        {
            ComplianceActivity compActivity = new ComplianceActivity();
            Compliance         comp         = db.Compliances.Find(id);

            if (comp.Approve != true)
            {
                comp.Approve = true;
                db.SaveChanges();
            }
            return(View());
        }
コード例 #16
0
        private Expression <Func <Question, bool> > BuildWhereExpression()
        {
            List <Expression <Func <Question, bool> > > criterias = new List <Expression <Func <Question, bool> > >();

            if (QuestionNo.HasValue)
            {
                Expression <Func <Question, bool> > questionNoCriteria = (subject) => subject.QuestionNo == QuestionNo;
                criterias.Add(questionNoCriteria);
            }

            if (!string.IsNullOrEmpty(QuestionText))
            {
                Expression <Func <Question, bool> > questionTextCriteria = (subject) => subject.QuestionText.Contains(QuestionText);
                criterias.Add(questionTextCriteria);
            }

            if (SelectedCategory != null)
            {
                Expression <Func <Question, bool> > categoryCriteria = (subject) => subject.QuestionCategoryId.Equals(SelectedCategory.Id);
                criterias.Add(categoryCriteria);
            }

            if (Frequency != Frequency.Undefined)
            {
                Expression <Func <Question, bool> > frequencyCriteria = (subject) => subject.Frequency == Frequency;
                criterias.Add(frequencyCriteria);
            }

            if (!Notification.Equals("Any", StringComparison.InvariantCultureIgnoreCase))
            {
                Expression <Func <Question, bool> > notificationCriteria = (subject) =>
                                                                           Notification.Equals("Yes", StringComparison.InvariantCultureIgnoreCase) ? subject.Notification : !subject.Notification;
                criterias.Add(notificationCriteria);
            }

            if (!Compliance.Equals("Any", StringComparison.InvariantCultureIgnoreCase))
            {
                Expression <Func <Question, bool> > complianceCriteria = (subject) =>
                                                                         Compliance.Equals("Yes", StringComparison.InvariantCultureIgnoreCase) ? subject.Compliance : !subject.Compliance;
                criterias.Add(complianceCriteria);
            }

            if (SelectedSettings != QuestionSettings.None)
            {
                Expression <Func <Question, bool> > settingsCriteria = (subject) =>
                                                                       subject.Flags == (subject.Flags | this.SelectedSettings);
                criterias.Add(settingsCriteria);
            }

            return(MatchStrategy.Equals("All", StringComparison.InvariantCultureIgnoreCase)
                ? criterias.CombineWithAnd()
                : criterias.CombineWithOr());
        }
コード例 #17
0
        public void Save(ComplianceResult data, string loggedInUserName)
        {
            var comp = _webcontext.Compliances.Where(m => m.ID == data.ComplianceId).FirstOrDefault();

            if (comp == null)
            {
                comp = new Compliance();

                comp.ActivityInfoId        = data.ID;
                comp.Description           = data.Description;
                comp.DueDate               = data.DueDate;
                comp.CompletionDate        = data.CompletionDate;
                comp.IsDelayed             = data.IsDelayed;
                comp.ReasonForDelay        = data.ReasonForDelay;
                comp.IsDelayAcceptable     = data.IsDelayAcceptable;
                comp.Remarks               = data.Remarks;
                comp.HasDeviation          = data.HasDeviation;
                comp.DeviationDesc         = data.DeviationDesc;
                comp.IsDeviationAcceptable = data.IsDeviationAcceptable;
                comp.IsActive              = true;
                comp.CreatedBy             = loggedInUserName;
                comp.CreatedOn             = DateTime.Now;

                _webcontext.Compliances.Add(comp);
            }
            else
            {
                comp.ActivityInfoId        = data.ID;
                comp.Description           = data.Description;
                comp.DueDate               = data.DueDate;
                comp.CompletionDate        = data.CompletionDate;
                comp.IsDelayed             = data.IsDelayed;
                comp.ReasonForDelay        = data.ReasonForDelay;
                comp.IsDelayAcceptable     = data.IsDelayAcceptable;
                comp.Remarks               = data.Remarks;
                comp.HasDeviation          = data.HasDeviation;
                comp.DeviationDesc         = data.DeviationDesc;
                comp.IsDeviationAcceptable = data.IsDeviationAcceptable;
                comp.UpdatedBy             = loggedInUserName;
                comp.UpdatedOn             = DateTime.Now;
            }

            //Update status
            var actInfo = _webcontext.ActivityInfoes.Where(m => m.ID == data.ID).FirstOrDefault();

            if (actInfo != null)
            {
                actInfo.Status    = data.Status;
                actInfo.UpdatedBy = loggedInUserName;
                actInfo.UpdatedOn = DateTime.Now;
            }
            _webcontext.SaveChanges();
        }
コード例 #18
0
 public ActionResult Edit([Bind(Include = "ComplinanceID,ComplianceFormID,ComplianceitemsID,Description,Order")] Compliance compliance)
 {
     if (ModelState.IsValid)
     {
         db.Entry(compliance).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ComplianceFormID  = new SelectList(db.ComplianceForms, "ComplianceFormID", "Name", compliance.ComplianceFormID);
     ViewBag.ComplianceitemsID = new SelectList(db.ComplianceItems, "ComplianceItemsID", "ItemName", compliance.ComplianceitemsID);
     return(View(compliance));
 }
コード例 #19
0
 /// <summary>
 /// Checks whether the fields in this Compliance are equivalent to the ones in the
 /// object being compared
 /// </summary>
 /// <param name="obj">the object to compare to</param>
 /// <returns>whether the two are equivalent</returns>
 public override bool Equals(object obj)
 {
     if (obj != null && obj.GetType() == this.GetType())
     {
         Compliance other = (Compliance)obj;
         if (other.status == this.status && other.checkedAt == this.checkedAt)
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #20
0
        // GET: Compliances/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Compliance compliance = db.Compliance.Find(id);

            if (compliance == null)
            {
                return(HttpNotFound());
            }
            return(View(compliance));
        }
コード例 #21
0
        // GET: Compliances/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Compliance compliance = db.Compliance.Find(id);

            if (compliance == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ComplianceFormID  = new SelectList(db.ComplianceForms, "ComplianceFormID", "Name", compliance.ComplianceFormID);
            ViewBag.ComplianceitemsID = new SelectList(db.ComplianceItems, "ComplianceItemsID", "ItemName", compliance.ComplianceitemsID);
            return(View(compliance));
        }
コード例 #22
0
        public ActionResult Create([Bind(Include = "ComplinanceID,ComplianceFormID,ComplianceitemsID,Description")] Compliance compliance)
        {
            if (ModelState.IsValid)
            {
                db.Compliance.Add(compliance);
                db.SaveChanges();



                return(RedirectToAction("Index"));
            }

            ViewBag.ComplianceFormID  = new SelectList(db.ComplianceForms, "ComplianceFormID", "Name", compliance.ComplianceFormID);
            ViewBag.ComplianceitemsID = new SelectList(db.ComplianceItems, "ComplianceItemsID", "ItemName", compliance.ComplianceitemsID);
            return(View(compliance));
        }
コード例 #23
0
        public double GetHash(Compliance compliance)
        {
            switch (compliance)
            {
            case Compliance.Minimum:
                return(this.Minimum);

            case Compliance.Maximum:
                return(this.Maximum);

            case Compliance.Operational:
                return(this.Operational);

            default:
                return(this.Minimum);
            }
        }
コード例 #24
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Compliance compliance = db.Compliances.Find(id);

            if (compliance == null)
            {
                return(HttpNotFound());
            }
            var name = ComplianceName();

            compliance.Names = GetComplianceListItems(name);
            return(View(compliance));
        }
コード例 #25
0
        public ActionResult Create([Bind(Include = "Compliance_Id,CompanyName,RegistrationNo,Employer_Id")] Compliance compliance)
        {
            if (ModelState.IsValid)
            {
                if (_context.Session["Employer_Id"] == null)
                {
                    return(RedirectToAction("EmployerLogin", "Employer"));
                }
                int id = (int)_context.Session["Employer_Id"];
                compliance.Employer_Id = id;
                db.Compliances.Add(compliance);
                db.SaveChanges();
                return(RedirectToAction("ComplianceSuccess"));
            }

            return(View(compliance));
        }
コード例 #26
0
        //private void Timer_Elapsed(object sender, ElapsedEventArgs e)
        //{
        //    sec++;
        //    if (sec == 60)
        //    {
        //        min++;
        //        sec = 0;
        //    }
        //    if (min == 60)
        //    {
        //        hour++;
        //        min = 0;
        //    }
        //    RunOnUiThread(() => { txtTimer.Text = $"{hour}:{min}:{sec}"; });
        //    radialProgrssView.Value = sec;
        //}

        //private void StartAsync()
        //{
        //    try
        //    {
        //        if (_player == null)
        //        {
        //            _player = new MediaPlayer();
        //        }
        //        else
        //        {
        //            _player.Reset();
        //        }

        //        // This method works better than setting the file path in SetDataSource. Don't know why.
        //        Java.IO.File file = new Java.IO.File(complianceActivity.filePath);
        //        Java.IO.FileInputStream fis = new Java.IO.FileInputStream(file);
        //        _player.SetDataSourceAsync(fis.FD);
        //        //player.SetDataSource(filePath);
        //        _player.Prepare();
        //        _player.Start();
        //    }

        //    catch (Exception ex)
        //    {
        //        Console.Out.WriteLine(ex.StackTrace);
        //    }
        //}

        //public void stoprecorder()
        //{
        //    // _stop.Enabled = !_stop.Enabled;
        //    _recorder.Stop();
        //    _recorder.Reset();
        //    _player.SetDataSource(filePath);
        //    _player.Prepare();
        //    _player.Start();
        //    mikestop.Visibility = ViewStates.Invisible;
        //}
        public async Task getData()
        {
            dynamic value = new ExpandoObject();

            value.task_id = "9-A19-AAAB-AAA-AAA";

            string json = JsonConvert.SerializeObject(value);

            try
            {
                JsonValue item = await restService.GetComplianceTask(this, l_id, user_id, json, "0").ConfigureAwait(false);

                comp    = JsonConvert.DeserializeObject <Compliance>(item);
                shapes1 = JsonConvert.DeserializeObject <Shapes>(comp.shapes);
            }
            catch (Exception ex)
            {
            }
            taskid           = comp.task_id;
            task_description = comp.description;
            deadline         = comp.deadline_date;
            meatingid        = comp.Meeting_ID;
            rownum           = comp.RowNo;
            taskcreationDate = comp.task_creation_date;
            markby           = comp.task_mark_by;
            taskstatus       = comp.taskStatus;
            markto           = comp.markTo;
            markingtype      = comp.task_marking_type;
            taskcreatedby    = comp.task_created_by;
            markingDate      = comp.MarkingDate;
            creationdate     = comp.task_creation_date;

            int posi = prefs1.GetInt("position", 0);

            for (int i = 0; i <= posi; i++)
            {
                max_num     = comp.lstAddedCompliance[i].max_numbers;
                file_format = comp.lstAddedCompliance[i].file_format;
                //  filesize = compliance.lstAddedCompliance[0].files
                filetype = comp.lstAddedCompliance[i].file_type;
                //taskid = comp.lstAddedCompliance[1].taskId;
                taskoverview = comp.lstAddedCompliance[i].task_overview;
                uploaded     = compliance.lstAddedCompliance[i].Uploaded;
            }
        }
コード例 #27
0
        //[Authorize]
        public HttpResponseMessage UnsignedUDONotes(APIEnums.RollupLevel rollupLevel, APIEnums.IncludeAssistant includeAssistant, int employeeId, int schoolYearId, DateTime?startDate, DateTime?endDate)
        {
            Stopwatch stopwatch = new Stopwatch();

            stopwatch.Start();

            // Work objects //
            var response = this.Request.CreateResponse(HttpStatusCode.OK);

            LifeSpan.DTO.Dashboard.UnsignedUDONoteResponse result = new UnsignedUDONoteResponse();

            try
            {
                Compliance bll = new Compliance();

                result.UnsignedUDONotes = bll.UnsignedUDONotes((includeAssistant == APIEnums.IncludeAssistant.True ? true : false), employeeId, schoolYearId, startDate, endDate);


                // Prepare result output //
                result.DashboardValue = result.UnsignedUDONotes.Count;
                result.RecordCount    = result.UnsignedUDONotes.Count;

                // Return summary only if requested //
                if (rollupLevel == APIEnums.RollupLevel.Summary)
                {
                    result.UnsignedUDONotes.Clear();
                }

                result.Success = true;
            }

            catch (Exception ex)
            {
                result.Success      = false;
                response.StatusCode = HttpStatusCode.BadRequest;
                result.Errors.Add(new Error(Error.ErrorClass.Error, string.Empty, ex.Message, ex));
            }

            stopwatch.Stop();
            result.ExecutionTimeSpan = stopwatch.Elapsed;
            result.TimeStamp         = DateTime.Now;
            response.Content         = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(result), Encoding.UTF8, "application/json");

            return(response);
        }
コード例 #28
0
 public RecipientJsonHelper(string id, string referenceId, string email, string name, string firstName, string lastName, string type, string status, string timeZone, string language, string dob, string gravatarUrl, Compliance compliance, List <Types.RecipientAccount> accounts, Address address)
 {
     this.id          = id;
     this.referenceId = referenceId;
     this.email       = email;
     this.name        = name;
     this.firstName   = firstName;
     this.lastName    = lastName;
     this.type        = type;
     this.status      = status;
     this.timeZone    = timeZone;
     this.language    = language;
     this.dob         = dob;
     this.gravatarUrl = gravatarUrl;
     this.compliance  = compliance;
     this.accounts    = accounts;
     this.address     = address;
 }
コード例 #29
0
        public ActionResult Create([Bind(Include = "ID,Name,DocumentID,StudentID,ExpirationDate,IsExpired,IsCompliant")] Compliance compliance)
        {
            if (ModelState.IsValid)
            {
                compliance.ExpirationDate = DateTime.Today.AddDays(-1);
                if (compliance.ExpirationDate < DateTime.Today)
                {
                    compliance.IsExpired = true;
                }
                db.Compliances.Add(compliance);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            var name = ComplianceName();

            compliance.Names  = GetComplianceListItems(name);
            ViewBag.StudentID = new SelectList(db.Students, "ID", "StudentNumber", compliance.StudentID);
            return(View(compliance));
        }
コード例 #30
0
        public IV_Data[] LogarithmicCurrentSweep(double start, double stop, int numPoints)
        {
            _driver.SendCommandRequest(string.Format("DCSweepILog_smu{0}({1}, {2}, {3}, {4}, {5})",
                                                     ChannelIdentifier,
                                                     start.ToString(NumberFormatInfo.InvariantInfo),
                                                     stop.ToString(NumberFormatInfo.InvariantInfo),
                                                     numPoints.ToString(NumberFormatInfo.InvariantInfo),
                                                     Compliance.ToString(NumberFormatInfo.InvariantInfo),
                                                     NPLC.ToString(NumberFormatInfo.InvariantInfo)));

            var result = new IV_Data[numPoints];

            for (int i = 0; i < result.Length; i++)
            {
                result[i] = new IV_Data(_driver.ReceiveDeviceAnswer());
            }

            return(result);
        }
コード例 #31
0
        /// <returns>True if the symbol is okay (i.e. no warnings).</returns>
        private bool CheckForDeclarationWithoutAssemblyDeclaration(Symbol symbol, Compliance compliance)
        {
            if (IsDeclared(compliance))
            {
                Compliance assemblyCompliance = GetDeclaredOrInheritedCompliance(symbol.ContainingAssembly);

                if (!IsDeclared(assemblyCompliance))
                {
                    ErrorCode code = IsTrue(compliance)
                        ? ErrorCode.WRN_CLS_AssemblyNotCLS
                        : ErrorCode.WRN_CLS_AssemblyNotCLS2;
                    this.AddDiagnostic(code, symbol.Locations[0], symbol);
                    return false;
                }
            }
            return true;
        }
コード例 #32
0
 private static bool IsDeclared(Compliance compliance)
 {
     switch (compliance)
     {
         case Compliance.DeclaredTrue:
         case Compliance.DeclaredFalse:
             return true;
         case Compliance.InheritedTrue:
         case Compliance.InheritedFalse:
         case Compliance.ImpliedFalse:
             return false;
         default:
             throw ExceptionUtilities.UnexpectedValue(compliance);
     }
 }
コード例 #33
0
        /// <returns>False if no further checks are required (because they would be cascading).</returns>
        private bool VisitTypeOrMember(Symbol symbol, Compliance compliance)
        {
            SymbolKind symbolKind = symbol.Kind;

            System.Diagnostics.Debug.Assert(
                symbolKind == SymbolKind.NamedType ||
                symbolKind == SymbolKind.Field ||
                symbolKind == SymbolKind.Property ||
                symbolKind == SymbolKind.Event ||
                symbolKind == SymbolKind.Method);
            System.Diagnostics.Debug.Assert(!symbol.IsAccessor());

            if (!CheckForDeclarationWithoutAssemblyDeclaration(symbol, compliance))
            {
                return false; // Don't cascade from this failure.
            }

            bool isCompliant = IsTrue(compliance);
            bool isAccessibleOutsideAssembly = IsAccessibleOutsideAssembly(symbol);

            if (isAccessibleOutsideAssembly)
            {
                if (isCompliant)
                {
                    CheckName(symbol);
                    CheckForCompliantWithinNonCompliant(symbol);
                    CheckReturnTypeCompliance(symbol);

                    if (symbol.Kind == SymbolKind.NamedType)
                    {
                        CheckMemberDistinctness((NamedTypeSymbol)symbol);
                    }
                }
                else if (GetDeclaredOrInheritedCompliance(symbol.ContainingAssembly) == Compliance.DeclaredTrue && IsTrue(GetInheritedCompliance(symbol)))
                {
                    CheckForNonCompliantAbstractMember(symbol);
                }
            }
            else if (IsDeclared(compliance))
            {
                this.AddDiagnostic(ErrorCode.WRN_CLS_MeaninglessOnPrivateType, symbol.Locations[0], symbol);
                return false; // Don't cascade from this failure.
            }

            if (isCompliant)
            {
                // Independent of accessibility.
                CheckForAttributeWithArrayArgument(symbol);
            }

            // These checks are independent of accessibility and compliance.
            if (symbolKind == SymbolKind.NamedType)
            {
                NamedTypeSymbol type = (NamedTypeSymbol)symbol;
                if (type.TypeKind == TypeKind.Delegate)
                {
                    MethodSymbol method = type.DelegateInvokeMethod;
                    CheckForMeaninglessOnParameter(method.Parameters);
                    CheckForMeaninglessOnReturn(method);
                }
            }
            else if (symbolKind == SymbolKind.Method)
            {
                MethodSymbol method = (MethodSymbol)symbol;
                CheckForMeaninglessOnParameter(method.Parameters);
                CheckForMeaninglessOnReturn(method);
            }
            else if (symbolKind == SymbolKind.Property)
            {
                PropertySymbol property = (PropertySymbol)symbol;
                CheckForMeaninglessOnParameter(property.Parameters);
            }

            // All checks that apply to inaccessible symbols are performed by this method.
            return isAccessibleOutsideAssembly;
        }