lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [5926] Purge some disused members of an obsolescent class


From: Greg Chicares
Subject: [lmi-commits] [5926] Purge some disused members of an obsolescent class
Date: Thu, 10 Jul 2014 15:00:40 +0000

Revision: 5926
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5926
Author:   chicares
Date:     2014-07-10 15:00:38 +0000 (Thu, 10 Jul 2014)
Log Message:
-----------
Purge some disused members of an obsolescent class

Modified Paths:
--------------
    lmi/trunk/ChangeLog
    lmi/trunk/ihs_server7702.cpp
    lmi/trunk/ihs_server7702io.cpp
    lmi/trunk/ihs_server7702io.hpp

Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2014-07-09 23:00:25 UTC (rev 5925)
+++ lmi/trunk/ChangeLog 2014-07-10 15:00:38 UTC (rev 5926)
@@ -33983,3 +33983,17 @@
   ihs_server7702io.hpp
 Expunge disused code.
 
+20140709T2300Z <address@hidden> [534]
+
+  ihs_server7702.cpp
+  ihs_server7702io.cpp
+  ihs_server7702io.hpp
+Rectify names.
+
+20140710T1500Z <address@hidden> [534]
+
+  ihs_server7702.cpp
+  ihs_server7702io.cpp
+  ihs_server7702io.hpp
+Purge some disused members of an obsolescent class.
+

Modified: lmi/trunk/ihs_server7702.cpp
===================================================================
--- lmi/trunk/ihs_server7702.cpp        2014-07-09 23:00:25 UTC (rev 5925)
+++ lmi/trunk/ihs_server7702.cpp        2014-07-10 15:00:38 UTC (rev 5926)
@@ -35,7 +35,6 @@
 #include "assert_lmi.hpp"
 #include "basic_values.hpp"
 #include "fenv_lmi.hpp"
-#include "gpt_xml_document.hpp"
 #include "ihs_irc7702.hpp"
 #include "ihs_server7702io.hpp"
 #include "ihs_x_type.hpp"
@@ -226,42 +225,6 @@
             "New gender different from old gender"
             );
         }
-
-    if(0.0 != Input.DecreaseRequiredByContract)
-        {
-        throw std::logic_error
-            (
-            "Contractually required decrease not implemented"
-            );
-        }
-    if(Input.NewBenefitAmount < Input.LeastBenefitAmountEver)
-        {
-        throw server7702_implausible_input
-            (
-            "New benefit amount less than least benefit amount ever"
-            );
-        }
-    if(Input.OldBenefitAmount < Input.LeastBenefitAmountEver)
-        {
-        throw server7702_implausible_input
-            (
-            "Old benefit amount less than least benefit amount ever"
-            );
-        }
-    if(Input.NewSpecAmt < Input.LeastBenefitAmountEver)
-        {
-        throw server7702_implausible_input
-            (
-            "New specified amount less than least benefit amount ever"
-            );
-        }
-    if(Input.OldSpecAmt < Input.LeastBenefitAmountEver)
-        {
-        throw server7702_implausible_input
-            (
-            "Old specified amount less than least benefit amount ever"
-            );
-        }
 }
 
 //============================================================================
@@ -281,13 +244,13 @@
             );
         }
 
-    IsIssuedToday = Input.IsIssuedToday;
+    // Casual, but strictly correct for all testdeck cases:
+    IsIssuedToday = 0 == Input.InforceYear;
 
     IsPossibleAdjustableEvent =
 // TODO ?? Why treat a taxable withdrawal as an adjustment event?
 //            0.0                             != Input.PremsPaidDecrement
-            true                            == Input.DecreaseRequiredByContract
-        ||  Input.NewDbo                    != Input.OldDbo
+            Input.NewDbo                    != Input.OldDbo
         ||  (   Input.NewSpecAmt            != Input.OldSpecAmt
             &&  Input.NewBenefitAmount      != Input.OldBenefitAmount
             )
@@ -303,7 +266,6 @@
 //      ||  Input.NewStateOfJurisdiction    != Input.OldStateOfJurisdiction
 // Assume WP is completely ignored
 //      ||  Input.NewWaiverOfPremiumInForce != Input.OldWaiverOfPremiumInForce
-//      ||  Input.NewPremiumsWaived         != Input.OldPremiumsWaived
 //      ||  Input.NewWaiverOfPremiumRating  != Input.OldWaiverOfPremiumRating
         ||  Input.NewAccidentalDeathInForce != Input.OldAccidentalDeathInForce
 // Assume ADD rating is ignored
@@ -311,9 +273,7 @@
 // Assume table rating is ignored
 //      ||  Input.NewSubstandardTable       != Input.OldSubstandardTable
 // Assume flat extras are ignored
-//      ||  Input.NewPermanentFlatAmount0   != Input.OldPermanentFlatAmount0
-//      ||  Input.NewTemporaryFlatAmount0   != Input.OldTemporaryFlatAmount0
-//      ||  Input.NewTemporaryFlatInforceYear0 != 
Input.OldTemporaryFlatInforceYear0
+//      ||  Input.NewFlatExtra              != Input.OldFlatExtra
         ;
 
     if(IsIssuedToday && IsPossibleAdjustableEvent)

Modified: lmi/trunk/ihs_server7702io.cpp
===================================================================
--- lmi/trunk/ihs_server7702io.cpp      2014-07-09 23:00:25 UTC (rev 5925)
+++ lmi/trunk/ihs_server7702io.cpp      2014-07-10 15:00:38 UTC (rev 5926)
@@ -40,15 +40,10 @@
 {
     ContractNumber             = z["ContractNumber"].str();
     InforceYear                = 
exact_cast<tnr_duration>(z["InforceYear"])->value();
-    IsIssuedToday              = 0 == InforceYear; // Casual, but strictly 
correct for all testdeck cases.
     PremsPaidDecrement         = 
exact_cast<tnr_nonnegative_double>(z["PremsPaidDecrement"])->value();
     Payment                    = 
exact_cast<tnr_nonnegative_double>(z["Payment"])->value();
-    DecreaseRequiredByContract = 0.0;
     ProductName                = z["ProductName"].str();
     GroupUnderwritingType      = 
exact_cast<mce_uw_basis>(z["GroupUnderwritingType"])->value();
-    PremTaxLoadRate            = 0.0;
-    TieredAssetChargeRate      = 0.0;
-    LeastBenefitAmountEver     = 0.0;
     InforceGlp                 = 
exact_cast<tnr_unrestricted_double>(z["InforceGlp"])->value();
     InforceGsp                 = 
exact_cast<tnr_unrestricted_double>(z["InforceGsp"])->value();
     NewIssueAge                = exact_cast<tnr_age>(z["IssueAge"])->value();
@@ -71,8 +66,6 @@
     OldQabTermAmt              = 
exact_cast<tnr_nonnegative_double>(z["OldQabTermAmt"])->value();
     NewWaiverOfPremiumInForce  = false;
     OldWaiverOfPremiumInForce  = false;
-    NewPremiumsWaived          = false;
-    OldPremiumsWaived          = false;
     NewWaiverOfPremiumRating   = "None";
     OldWaiverOfPremiumRating   = "None";
     NewAccidentalDeathInForce  = false;
@@ -81,24 +74,6 @@
     OldAccidentalDeathRating   = "None";
     NewSubstandardTable        = 
exact_cast<mce_table_rating>(z["NewSubstandardTable"])->value();
     OldSubstandardTable        = 
exact_cast<mce_table_rating>(z["OldSubstandardTable"])->value();
-    NewPermanentFlatAmount0    = 0.0;
-    OldPermanentFlatAmount0    = 0.0;
-    NewPermanentFlatAmount1    = 0.0;
-    OldPermanentFlatAmount1    = 0.0;
-    NewPermanentFlatAmount2    = 0.0;
-    OldPermanentFlatAmount2    = 0.0;
-    NewTemporaryFlatAmount0    = 0.0;
-    OldTemporaryFlatAmount0    = 0.0;
-    NewTemporaryFlatAmount1    = 0.0;
-    OldTemporaryFlatAmount1    = 0.0;
-    NewTemporaryFlatAmount2    = 0.0;
-    OldTemporaryFlatAmount2    = 0.0;
-    NewTemporaryFlatDuration0  = 0;
-    OldTemporaryFlatDuration0  = 0;
-    NewTemporaryFlatDuration1  = 0;
-    OldTemporaryFlatDuration1  = 0;
-    NewTemporaryFlatDuration2  = 0;
-    OldTemporaryFlatDuration2  = 0;
     LMI_ASSERT(z["OldTarget"] == z["NewTarget"]);
     TargetPremium              = 
exact_cast<tnr_nonnegative_double>(z["NewTarget"])->value();
 }

Modified: lmi/trunk/ihs_server7702io.hpp
===================================================================
--- lmi/trunk/ihs_server7702io.hpp      2014-07-09 23:00:25 UTC (rev 5925)
+++ lmi/trunk/ihs_server7702io.hpp      2014-07-10 15:00:38 UTC (rev 5926)
@@ -39,16 +39,11 @@
     operator gpt_input() const;
 
     std::string      ContractNumber;             //  an arbitrary string that 
identifies the contract uniquely. The contract number may be used, but remember 
that the server maintains no database of actual contracts.
-    bool             IsIssuedToday;              //  true if the contract is 
issued or reissued today. Used to prevent adjustable events at issue, which 
must not occur.
     int              InforceYear;                //  number of policy years 
completed since issue (so it starts at 0).
     double           PremsPaidDecrement;         // UNUSED IN OLD TESTDECK the 
nontaxable portion of partial surrenders, including any withdrawal fees, plus 
involuntary withdrawals to restrict NAAR for reinsurance, plus amounts returned 
to preserve \xA77702A status.
     double           Payment;                    // UNUSED IN OLD TESTDECK 
gross payments, including those paid by a waiver benefit, before subtracting 
any "PremsPaidDecrement" on the same date, but net of any charges for 
non-qualified additional benefits that are not prefunded.
-    double           DecreaseRequiredByContract; // UNUSED amount of decrease 
in specified amount required by the contract's terms, as for example in a 
decreasing term contract: unsupported, so use 0.0 for now.
     std::string      ProductName;                //  the only permissible 
values are those for which data files exist.
     mce_uw_basis     GroupUnderwritingType;      //  permissible values are 
Medical, Paramedical, Nonmedical, Simplified_issue, and Guaranteed_issue, and I 
assume this is set at issue and can never change.
-    double           PremTaxLoadRate;            //  the rate actually charged 
as a premium load. Example: 0.02 means a 2% load. Used to determine whether any 
load reflected in \xA77702 calculations has changed.
-    double           TieredAssetChargeRate;      // UNUSED the tiered rate 
actually charged against assets, reflecting the current tier. Example: 0.0050 
means fifty basis points. Used to determine whether any load reflected in 
\xA77702 calculations has changed.
-    double           LeastBenefitAmountEver;     // UNUSED the lowest face 
amount ever used in \xA77702 calculations since the contract was issued; equal 
at issue to DB. The server will always calculate this but never store it. The 
client will always store it but never calculate it, except to set it equal to 
DB at issue.
 
     // The names of the next several parameters begin with the prefix "Old" to 
indicate that they are evaluated before the day's transactions. Should an 
adjustable event occur, they describe the state of the contract before any 
transaction that might have caused the adjustable event. At issue, "Old" values 
are the contract's issue parameters.
     double           InforceGlp;                 //  as previously calculated 
by the server; 0.0 at issue.
@@ -77,8 +72,6 @@
     double           OldQabTermAmt;
     bool             NewWaiverOfPremiumInForce;  // UNUSED true if waiver 
benefit in force, otherwise false.
     bool             OldWaiverOfPremiumInForce;  // UNUSED
-    bool             NewPremiumsWaived;          // UNUSED true if waiver 
benefit in disability status, otherwise false.
-    bool             OldPremiumsWaived;          // UNUSED
     mce_table_rating NewWaiverOfPremiumRating;   // UNUSED substandard rating 
for premium waiver; I don't know what the permissible values are.
     mce_table_rating OldWaiverOfPremiumRating;   // UNUSED
     bool             NewAccidentalDeathInForce;  //  true if accidental death 
benefit in force, otherwise false.
@@ -87,32 +80,6 @@
     mce_table_rating OldAccidentalDeathRating;   // UNUSED
     mce_table_rating NewSubstandardTable;        // UNUSED
     mce_table_rating OldSubstandardTable;        // UNUSED
-
-    // The remaining parameters specify flat extras.
-    // The distinction between temporary and permanent flats is important. I 
give the names with a suffix "0" here, but they need to be repeated with "1", 
"2", and so on for as many flats as permitted (how many is that?). As noted 
above, each has both an "old" and a "new" flavor.
-    //
-    // amount of the flat extra, expressed as dollars per thousand per year to 
conform to universal usage.
-    double           NewPermanentFlatAmount0;    // UNUSED
-    double           OldPermanentFlatAmount0;    // UNUSED
-    double           NewPermanentFlatAmount1;    // UNUSED
-    double           OldPermanentFlatAmount1;    // UNUSED
-    double           NewPermanentFlatAmount2;    // UNUSED
-    double           OldPermanentFlatAmount2;    // UNUSED
-    // amount of the flat extra, expressed as dollars per thousand per year to 
conform to universal usage.
-    double           NewTemporaryFlatAmount0;    // UNUSED
-    double           OldTemporaryFlatAmount0;    // UNUSED
-    double           NewTemporaryFlatAmount1;    // UNUSED
-    double           OldTemporaryFlatAmount1;    // UNUSED
-    double           NewTemporaryFlatAmount2;    // UNUSED
-    double           OldTemporaryFlatAmount2;    // UNUSED
-    // number of years the flat extra applies, measured from the issue date.
-    int              NewTemporaryFlatDuration0;  // UNUSED
-    int              OldTemporaryFlatDuration0;  // UNUSED
-    int              NewTemporaryFlatDuration1;  // UNUSED
-    int              OldTemporaryFlatDuration1;  // UNUSED
-    int              NewTemporaryFlatDuration2;  // UNUSED
-    int              OldTemporaryFlatDuration2;  // UNUSED
-
     double           TargetPremium; // the target premium. The client will 
always calculate and store it.
 };
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]