code: @Override
      public <T> T get(String fieldName)
      {
          switch (fieldName.toLowerCase()) {
              case FIELD_REPOSITORY:
                  return (T) getRepository();
              case FIELD_ID:
                  return (T) getId().getId();
              case FIELD_VERSION:
                  return (T) getId().getVersion();
              case FIELD_FEATURE:
              case FIELD_FEATURES:
                  return (T) ExtensionIdConverter.toStringList(getExtensionFeatures());
              case FIELD_EXTENSIONFEATURE:
              case FIELD_EXTENSIONFEATURES:
                  return (T) getExtensionFeatures();
              case FIELD_SUMMARY:
                  return (T) getSummary();
              case FIELD_DESCRIPTION:
                  return (T) getDescription();
              case FIELD_AUTHOR:
              case FIELD_AUTHORS:
                  return (T) getAuthors();
              case FIELD_CATEGORY:
                  return (T) getCategory();
              case FIELD_LICENSE:
              case FIELD_LICENSES:
                  return (T) getLicenses();
              case FIELD_NAME:
                  return (T) getName();
              case FIELD_TYPE:
                  return (T) getType();
              case FIELD_WEBSITE:
                  return (T) getWebSite();
              case FIELD_NAMESPACES:
              case FIELD_ALLOWEDNAMESPACE:
              case FIELD_ALLOWEDNAMESPACES:
                  return (T) getAllowedNamespaces();
              case FIELD_SCM:
                  return (T) getScm();
              case FIELD_REPOSITORIES:
                  return (T) getRepositories();
              case FIELD_PROPERTIES:
                  return (T) getProperties();
  
              default:
                  // Unknown field, probably a property
                  return getProperty(fieldName);
          }
      }
docs: Get an extension field by name. Fallback on properties.
  
  @param fieldName the field name;
  @return the field value or null if none could be found