class StepMetaProps {

  @VisibleForTesting
  static List<String> sensitiveFields( Class clazz ) {
    Field[] declaredFields = clazz.getDeclaredFields();

    return concat( stream( declaredFields ), recurseDeep( declaredFields ) )
      .filter( field -> field.getAnnotation( Sensitive.class ) != null )
      .filter( field -> field.getAnnotation( Injection.class ) != null )
      .map( field -> field.getAnnotation( Injection.class ).name() )
      .collect( Collectors.toList() );
  }

  @SuppressWarnings ( "unused" ) private  StepMetaProps();
  private  StepMetaProps( StepMetaInterface smi );

}