code: function( values, targetHTMLFilePath ){
          var deferred = Q.defer(),
              generatedCode;
  
          /**
           * テンプレート向けユーティリティ
           * リソースファイルへのパス記述をファイル相対形式で返却する
           * @param {String} resourcePath
           * @return {String}
           */
          function normalizePath( resourcePath ){
              return path.relative(
                  path.dirname( path.resolve( process.cwd(), targetHTMLFilePath ) ),
                  resourcePath
              ).split( path.sep ).join( "/" );
          }
  
          var resolvedDefaultValues = {};
          _.forEach( this.defaultValues, function( value, key ){
              resolvedDefaultValues[ key ] = _.template( value )( {
                  __normalizePath__: normalizePath
              } );
          } );
  
          // テンプレート固有の（更新先HTML由来ではない）パラメータを追加
          values = _.assign( values, {
              __default__: resolvedDefaultValues,
              __normalizePath__: normalizePath
          } );
  
          try {
              generatedCode = this.processor( values );
          } catch( err ){
              deferred.reject( err );
              return deferred.promise;
          }
  
          deferred.resolve( generatedCode );
          return deferred.promise;
      }
docs: values, targetHTMLFilePathを反映したHTMLコードを生成する。
  @param {Object} values
  @param {String} targetHTMLFilePath ファイルの場所にあわせてコード内のパス記述を調整するため、必須。
  @return {promise|*|Q.promise}