code: public Asset createMinimalAssetForJSON() throws IllegalArgumentException, IllegalAccessException {
          Asset ass = new Asset();
          for (Field f : Asset.class.getDeclaredFields()) {
              if (f.isAnnotationPresent(JSONIncludeForFile.class)) {
                  f.set(ass, f.get(this));
              }
          }
          return ass;
      }
docs: Creates a <b>shallow</b> copy of the Asset that can contains the information needed for a file based
  repository to use. Used when the Asset is read from massive and is pushed to a file based repository (to
  contain only the relevant fields)
  
  @return
  @throws IllegalArgumentException
  @throws IllegalAccessException