code: private void getMetadataFromSasFile(String encoding) throws IOException {
          boolean endOfMetadata = false;
          processSasFileHeader(encoding);
          cachedPage = new byte[sasFileProperties.getPageLength()];
          while (!endOfMetadata) {
              try {
                  sasFileStream.readFully(cachedPage, 0, sasFileProperties.getPageLength());
              } catch (EOFException ex) {
                  eof = true;
                  break;
              }
              endOfMetadata = processSasFilePageMeta();
          }
      }
docs: The method that reads and parses metadata from the sas7bdat and puts the results in
  {@link SasFileParser#sasFileProperties}.
  
  @param encoding - builder variable for {@link SasFileParser#encoding} variable.
  @throws IOException - appears if reading from the {@link SasFileParser#sasFileStream} stream is impossible.