protected void standardPrimePumpProcessing() {
   JMethodDeclaration primePump = joiner_code.getPrimePumpMethod();
   if (primePump != null && !codeStore.hasMethod(primePump)) {
     // Add method -- but only once
     codeStore.addMethod(primePump);
   }
   if (primePump != null) {
     // for each time this method is called, it adds another call
     // to the primePump routine to the initialization.
     codeStore.addInitStatement(
         new JExpressionStatement(
             null,
             new JMethodCallExpression(
                 null, new JThisExpression(null), primePump.getName(), new JExpression[0]),
             null));
   }
 }
 protected void standardInitProcessing() {
   //      Have the main function for the CodeStore call our init if any
   codeStore.addInitFunctionCall(joiner_code.getInitMethod());
   JMethodDeclaration workAtInit = joiner_code.getInitStageMethod();
   if (workAtInit != null) {
     // if there are calls to work needed at init time then add
     // method to general pool of methods
     codeStore.addMethod(workAtInit);
     // and add call to list of calls made at init time.
     // Note: these calls must execute in the order of the
     // initialization schedule -- so caller of this routine
     // must follow order of init schedule.
     codeStore.addInitStatement(
         new JExpressionStatement(
             null,
             new JMethodCallExpression(
                 null, new JThisExpression(null), workAtInit.getName(), new JExpression[0]),
             null));
   }
 }