code: public void setTypeParts(String[] parts) {
          this.typeFinal = parts[0] != null;
          this.typeScope = parts[1];
          this.typeFull = parts[2];
          this.typeRaw = parts[3];
          if (parts[8] != null) {
              this.typeGenericName = new String[] {parts[4], parts[6], parts[8]};
              this.typeGenericExtends = new String[3];
              this.typeGenericExtends[0] = parts[5] != null ? parts[5] : "";
              this.typeGenericExtends[1] = parts[7] != null ? parts[7] : "";
              this.typeGenericExtends[2] = parts[9] != null ? parts[9] : "";
          } else if (parts[6] != null) {
              this.typeGenericName = new String[] {parts[4], parts[6]};
              this.typeGenericExtends = new String[2];
              this.typeGenericExtends[0] = parts[5] != null ? parts[5] : "";
              this.typeGenericExtends[1] = parts[7] != null ? parts[7] : "";
          } else if (parts[4] != null) {
              this.typeGenericName = new String[] {parts[4]};
              this.typeGenericExtends = new String[1];
              this.typeGenericExtends[0] = parts[5] != null ? parts[5] : "";
          } else {
              this.typeGenericName = new String[0];
              this.typeGenericExtends = new String[0];
          }
      }
docs: Sets the bean type.
  @param parts  the type to set