lmi-commits
[Top][All Lists]
Advanced

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

[lmi-commits] [5930] Eradicate obsolete class Server7702Input


From: Greg Chicares
Subject: [lmi-commits] [5930] Eradicate obsolete class Server7702Input
Date: Fri, 11 Jul 2014 23:56:35 +0000

Revision: 5930
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5930
Author:   chicares
Date:     2014-07-11 23:56:34 +0000 (Fri, 11 Jul 2014)
Log Message:
-----------
Eradicate obsolete class Server7702Input

Modified Paths:
--------------
    lmi/trunk/ChangeLog
    lmi/trunk/Makefile.am
    lmi/trunk/objects.make

Removed Paths:
-------------
    lmi/trunk/ihs_server7702io.cpp
    lmi/trunk/ihs_server7702io.hpp

Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2014-07-11 23:28:47 UTC (rev 5929)
+++ lmi/trunk/ChangeLog 2014-07-11 23:56:34 UTC (rev 5930)
@@ -33997,3 +33997,32 @@
   ihs_server7702io.hpp
 Purge some disused members of an obsolescent class.
 
+20140711T1157Z <address@hidden> [534]
+
+  ihs_server7702.cpp
+  ihs_server7702io.cpp
+  ihs_server7702io.hpp
+Dichotomize a member datum into "old" and "new".
+
+20140711T2221Z <address@hidden> [534]
+
+  ihs_server7702.cpp
+  ihs_server7702.hpp
+Abjure obsolescent server's "C" linkage.
+
+20140711T2328Z <address@hidden> [534]
+
+  gpt_input.hpp
+  gpt_server.cpp
+  ihs_server7702.cpp
+  ihs_server7702.hpp
+Render class Server7702Input obsolete.
+
+20140711T2356Z <address@hidden> [534]
+
+  Makefile.am
+  ihs_server7702io.cpp [expunged]
+  ihs_server7702io.hpp [expunged]
+  objects.make
+Eradicate obsolete class Server7702Input.
+

Modified: lmi/trunk/Makefile.am
===================================================================
--- lmi/trunk/Makefile.am       2014-07-11 23:28:47 UTC (rev 5929)
+++ lmi/trunk/Makefile.am       2014-07-11 23:56:34 UTC (rev 5930)
@@ -372,7 +372,6 @@
     ihs_irc7702a.cpp \
     ihs_mortal.cpp \
     ihs_server7702.cpp \
-    ihs_server7702io.cpp \
     lmi.cpp \
     md5.cpp \
     mec_input.cpp \
@@ -1091,7 +1090,6 @@
     ihs_irc7702.hpp \
     ihs_irc7702a.hpp \
     ihs_server7702.hpp \
-    ihs_server7702io.hpp \
     ihs_x_type.hpp \
     illustration_document.hpp \
     illustration_view.hpp \

Deleted: lmi/trunk/ihs_server7702io.cpp
===================================================================
--- lmi/trunk/ihs_server7702io.cpp      2014-07-11 23:28:47 UTC (rev 5929)
+++ lmi/trunk/ihs_server7702io.cpp      2014-07-11 23:56:34 UTC (rev 5930)
@@ -1,130 +0,0 @@
-// GPT server I/O.
-//
-// Copyright (C) 2000, 2001, 2002, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 
2012, 2013, 2014 Gregory W. Chicares.
-//
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License version 2 as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program; if not, write to the Free Software Foundation,
-// Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
-//
-// http://savannah.nongnu.org/projects/lmi
-// email: <address@hidden>
-// snail: Chicares, 186 Belle Woods Drive, Glastonbury CT 06033, USA
-
-// $Id$
-
-#ifdef __BORLANDC__
-#   include "pchfile.hpp"
-#   pragma hdrstop
-#endif // __BORLANDC__
-
-#include "ihs_server7702io.hpp"
-
-#include "assert_lmi.hpp"
-#include "value_cast.hpp"
-
-Server7702Input::Server7702Input()
-{
-    // Do nothing.
-}
-
-Server7702Input::Server7702Input(gpt_input const& z)
-{
-    ContractNumber             = z["ContractNumber"].str();
-    InforceYear                = 
exact_cast<tnr_duration>(z["InforceYear"])->value();
-    PremsPaidDecrement         = 
exact_cast<tnr_nonnegative_double>(z["PremsPaidDecrement"])->value();
-    Payment                    = 
exact_cast<tnr_nonnegative_double>(z["Payment"])->value();
-    ProductName                = z["ProductName"].str();
-    GroupUnderwritingType      = 
exact_cast<mce_uw_basis>(z["GroupUnderwritingType"])->value();
-    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();
-    OldIssueAge                = NewIssueAge;
-    NewGender                  = 
exact_cast<mce_gender>(z["NewGender"])->value();
-    OldGender                  = 
exact_cast<mce_gender>(z["OldGender"])->value();
-    NewSmoking                 = 
exact_cast<mce_smoking>(z["NewSmoking"])->value();
-    OldSmoking                 = 
exact_cast<mce_smoking>(z["OldSmoking"])->value();
-    NewUnderwritingClass       = 
exact_cast<mce_class>(z["UnderwritingClass"])->value();
-    OldUnderwritingClass       = NewUnderwritingClass;
-    NewStateOfJurisdiction     = 
exact_cast<mce_state>(z["StateOfJurisdiction"])->value();
-    OldStateOfJurisdiction     = NewStateOfJurisdiction;
-    NewDbo                     = 
exact_cast<mce_dbopt_7702>(z["NewDbo"])->value();
-    OldDbo                     = 
exact_cast<mce_dbopt_7702>(z["OldDbo"])->value();
-    NewBenefitAmount           = 
exact_cast<tnr_nonnegative_double>(z["NewDeathBft"])->value();
-    OldBenefitAmount           = 
exact_cast<tnr_nonnegative_double>(z["OldDeathBft"])->value();
-    NewSpecAmt                 = 
exact_cast<tnr_nonnegative_double>(z["NewSpecAmt"])->value();
-    OldSpecAmt                 = 
exact_cast<tnr_nonnegative_double>(z["OldSpecAmt"])->value();
-    NewQabTermAmt              = 
exact_cast<tnr_nonnegative_double>(z["NewQabTermAmt"])->value();
-    OldQabTermAmt              = 
exact_cast<tnr_nonnegative_double>(z["OldQabTermAmt"])->value();
-    NewWaiverOfPremiumInForce  = false;
-    OldWaiverOfPremiumInForce  = false;
-    NewWaiverOfPremiumRating   = "None";
-    OldWaiverOfPremiumRating   = "None";
-    NewAccidentalDeathInForce  = false;
-    OldAccidentalDeathInForce  = false;
-    NewAccidentalDeathRating   = "None";
-    OldAccidentalDeathRating   = "None";
-    NewSubstandardTable        = 
exact_cast<mce_table_rating>(z["NewSubstandardTable"])->value();
-    OldSubstandardTable        = 
exact_cast<mce_table_rating>(z["OldSubstandardTable"])->value();
-    NewTarget                  = 
exact_cast<tnr_nonnegative_double>(z["NewTarget"])->value();
-    OldTarget                  = 
exact_cast<tnr_nonnegative_double>(z["OldTarget"])->value();
-}
-
-Server7702Input::operator gpt_input() const
-{
-    gpt_input z;
-
-    z["ContractNumber"]        = ContractNumber;
-    z["InforceYear"]           = value_cast<std::string>(InforceYear);
-    // For class gpt_input, 'InforceAsOfDate' is primary by default,
-    // so it needs to be set here.
-    calendar_date d = add_years
-        (exact_cast<tnr_date>(z["EffectiveDate"])->value()
-        ,exact_cast<tnr_duration>(z["InforceYear"])->value()
-        ,true
-        );
-    z["InforceAsOfDate"] = value_cast<std::string>(d);
-    z["PremsPaidDecrement"]    = value_cast<std::string>(PremsPaidDecrement);
-    z["Payment"]               = value_cast<std::string>(Payment);
-    z["ProductName"]           = ProductName;
-    z["GroupUnderwritingType"] = GroupUnderwritingType.str();
-    z["InforceGlp"]            = value_cast<std::string>(InforceGlp);
-    z["InforceGsp"]            = value_cast<std::string>(InforceGsp);
-    z["IssueAge"]              = value_cast<std::string>(NewIssueAge);
-    LMI_ASSERT(OldIssueAge == NewIssueAge);
-    z["NewGender"]             = NewGender.str();
-    z["OldGender"]             = OldGender.str();
-    z["NewSmoking"]            = NewSmoking.str();
-    z["OldSmoking"]            = OldSmoking.str();
-    z["UnderwritingClass"]     = NewUnderwritingClass.str();
-    LMI_ASSERT(OldUnderwritingClass == NewUnderwritingClass);
-    z["StateOfJurisdiction"]   = NewStateOfJurisdiction.str();
-    LMI_ASSERT(OldStateOfJurisdiction == NewStateOfJurisdiction);
-    z["NewDbo"]                = NewDbo.str();
-    z["OldDbo"]                = OldDbo.str();
-    z["NewDeathBft"]           = value_cast<std::string>(NewBenefitAmount);
-    z["OldDeathBft"]           = value_cast<std::string>(OldBenefitAmount);
-    z["NewSpecAmt"]            = value_cast<std::string>(NewSpecAmt);
-    z["OldSpecAmt"]            = value_cast<std::string>(OldSpecAmt);
-    // It's unclear whether Server7702Input's [Old|New]QabTermAmt
-    // members were intended to represent an integrated term rider or
-    // a QAB. That doesn't really matter, because these amounts were
-    // never used in the old GPT calculations.
-    z["NewQabTermAmt"]         = value_cast<std::string>(NewQabTermAmt);
-    z["OldQabTermAmt"]         = value_cast<std::string>(OldQabTermAmt);
-    z["NewSubstandardTable"]   = NewSubstandardTable.str();
-    z["OldSubstandardTable"]   = OldSubstandardTable.str();
-    z["NewTarget"]             = value_cast<std::string>(NewTarget);
-    z["OldTarget"]             = value_cast<std::string>(OldTarget);
-
-    return z;
-}
-

Deleted: lmi/trunk/ihs_server7702io.hpp
===================================================================
--- lmi/trunk/ihs_server7702io.hpp      2014-07-11 23:28:47 UTC (rev 5929)
+++ lmi/trunk/ihs_server7702io.hpp      2014-07-11 23:56:34 UTC (rev 5930)
@@ -1,103 +0,0 @@
-// GPT server I/O.
-//
-// Copyright (C) 1998, 2001, 2002, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 
2012, 2013, 2014 Gregory W. Chicares.
-//
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License version 2 as
-// published by the Free Software Foundation.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program; if not, write to the Free Software Foundation,
-// Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
-//
-// http://savannah.nongnu.org/projects/lmi
-// email: <address@hidden>
-// snail: Chicares, 186 Belle Woods Drive, Glastonbury CT 06033, USA
-
-// $Id$
-
-#ifndef ihs_server7702io_hpp
-#define ihs_server7702io_hpp
-
-#include "config.hpp"
-
-#include "gpt_input.hpp"
-#include "mc_enum.hpp"
-#include "mc_enum_types.hpp"
-
-#include <string>
-
-struct Server7702Input
-{
-    Server7702Input();
-    Server7702Input(gpt_input const&);
-    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.
-    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.
-    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.
-
-    // 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.
-    double           InforceGsp;                 //  as previously calculated 
by the server; 0.0 at issue.
-
-    // Each of the remaining parameters must be supplied in both a "new" and 
an "old" flavor, reflecting the state of the contract respectively before and 
after the day's transactions. For economy of presentation I don't repeat the 
list here with "Old" and "New" prefixes, but we'll have to do that when 
specifying the record layout.
-    int              NewIssueAge;                //  as defined in the GPT 
specs.
-    int              OldIssueAge;                // UNUSED IN OLD TESTDECK
-    mce_gender       NewGender;                  //  male, female, or unisex.
-    mce_gender       OldGender;                  // UNUSED IN OLD TESTDECK
-    mce_smoking      NewSmoking;                 //  smoker, nonsmoker, or 
unismoke.
-    mce_smoking      OldSmoking;
-
-    mce_class        NewUnderwritingClass;       //  permissible values are 
Preferred, Standard, and Rated.
-    mce_class        OldUnderwritingClass;       // UNUSED IN OLD TESTDECK
-    mce_state        NewStateOfJurisdiction;     //  capitalized two-letter 
postal abbreviation for the state that determines the premium tax rate.
-    mce_state        OldStateOfJurisdiction;     // UNUSED IN OLD TESTDECK
-
-    mce_dbopt_7702   NewDbo;                     //  DBO--A or B only.
-    mce_dbopt_7702   OldDbo;
-    double           NewBenefitAmount;           //  'death benefit' as 
defined in 7702: we are using the amount payable by reason of death.
-    double           OldBenefitAmount;           //  the benefit amount before 
today's transactions; at issue, the amount described in the section on dumpins.
-    double           NewSpecAmt;                 //  SA.
-    double           OldSpecAmt;
-    double           NewQabTermAmt;              //  benefit amount of any 
term rider; 0.0 if none.
-    double           OldQabTermAmt;
-    bool             NewWaiverOfPremiumInForce;  // UNUSED true if waiver 
benefit in force, otherwise false.
-    bool             OldWaiverOfPremiumInForce;  // 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.
-    bool             OldAccidentalDeathInForce;
-    mce_table_rating NewAccidentalDeathRating;   // UNUSED substandard rating 
for premium waiver; I don't know what the permissible values are.
-    mce_table_rating OldAccidentalDeathRating;   // UNUSED
-    mce_table_rating NewSubstandardTable;        // UNUSED
-    mce_table_rating OldSubstandardTable;        // UNUSED
-    double           NewTarget;                  // the target premium. The 
client will always calculate and store it.
-    double           OldTarget;
-};
-
-struct Server7702Output
-{
-    std::string      ContractNumber;                // the same identifier 
supplied as input.
-    int              Status;
-    bool             AdjustableEventOccurred;
-    double           GuidelineLevelPremium;         // the new GLP.
-    double           GuidelineSinglePremium;        // the new GSP.
-    double           GuidelineLevelPremiumPolicyA;  // the GLP for notional 
policy A-the policy as it was at the last adjustable event, or at issue if 
there has been no adjustable event.
-    double           GuidelineSinglePremiumPolicyA; // the GSP for notional 
policy A-the policy as it was at the last adjustable event, or at issue if 
there has been no adjustable event.
-    double           GuidelineLevelPremiumPolicyB;  // the GLP for notional 
policy B; 0.0 at issue or if there has been no adjustable event.
-    double           GuidelineSinglePremiumPolicyB; // the GSP for notional 
policy B; 0.0 at issue or if there has been no adjustable event.
-    double           GuidelineLevelPremiumPolicyC;  // the GLP for notional 
policy C; 0.0 at issue or if there has been no adjustable event.
-    double           GuidelineSinglePremiumPolicyC; // the GSP for notional 
policy C; 0.0 at issue or if there has been no adjustable event.
-};
-
-#endif // ihs_server7702io_hpp
-

Modified: lmi/trunk/objects.make
===================================================================
--- lmi/trunk/objects.make      2014-07-11 23:28:47 UTC (rev 5929)
+++ lmi/trunk/objects.make      2014-07-11 23:56:34 UTC (rev 5930)
@@ -288,7 +288,6 @@
   ihs_irc7702a.o \
   ihs_mortal.o \
   ihs_server7702.o \
-  ihs_server7702io.o \
   lmi.o \
   md5.o \
   mec_input.o \




reply via email to

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