Examples of UghHelper


Examples of de.sub.goobi.helper.UghHelper

   *
   * @throws PreferencesException
   */
  private void fillFieldsFromMetadataFile(Fileformat myRdf) throws PreferencesException {
    if (myRdf != null) {
      UghHelper ughHelp = new UghHelper();

      for (AdditionalField field : this.additionalFields) {
        if (field.isUghbinding() && field.getShowDependingOnDoctype()) {
          /* welches Docstruct */

          DocStruct myTempStruct = myRdf.getDigitalDocument().getLogicalDocStruct();
          if (field.getDocstruct().equals("firstchild")) {
            try {
              myTempStruct = myRdf.getDigitalDocument().getLogicalDocStruct().getAllChildren().get(0);
            } catch (RuntimeException e) {
            }
          }
          if (field.getDocstruct().equals("boundbook")) {
            myTempStruct = myRdf.getDigitalDocument().getPhysicalDocStruct();
          }
          /* welches Metadatum */
          try {
            if (field.getMetadata().equals("ListOfCreators")) {
              /* bei Autoren die Namen zusammenstellen */
              String myautoren = "";
              if (myTempStruct.getAllPersons() != null) {
                for (Person p : myTempStruct.getAllPersons()) {
                  myautoren += p.getLastname();
                  if (StringUtils.isNotBlank(p.getFirstname())) {
                    myautoren += ", " + p.getFirstname();
                  }
                  myautoren += "; ";
                }
                if (myautoren.endsWith("; ")) {
                  myautoren = myautoren.substring(0, myautoren.length() - 2);
                }
              }
              field.setWert(myautoren);
            } else {
              /* bei normalen Feldern die Inhalte auswerten */
              MetadataType mdt = ughHelp.getMetadataType(this.prozessKopie.getRegelsatz().getPreferences(), field.getMetadata());
              Metadata md = ughHelp.getMetadata(myTempStruct, mdt);
              if (md != null) {
                field.setWert(md.getValue());
              }
            }
          } catch (UghHelperException e) {
View Full Code Here

Examples of de.sub.goobi.helper.UghHelper

          DigitalDocument dd = this.myRdf.getDigitalDocument();
          DocStructType dst = this.prozessVorlage.getRegelsatz().getPreferences().getDocStrctTypeByName("BoundBook");
          DocStruct dsBoundBook = dd.createDocStruct(dst);
          dd.setPhysicalDocStruct(dsBoundBook);

          UghHelper ughhelp = new UghHelper();
          MetadataType mdt = ughhelp.getMetadataType(this.prozessKopie, "pathimagefiles");

          if (this.myRdf != null && this.myRdf.getDigitalDocument() != null
              && this.myRdf.getDigitalDocument().getPhysicalDocStruct() != null) {
            List<? extends Metadata> alleImagepfade = this.myRdf.getDigitalDocument().getPhysicalDocStruct().getAllMetadataByType(mdt);
            if (alleImagepfade != null && alleImagepfade.size() > 0) {
View Full Code Here

Examples of de.sub.goobi.helper.UghHelper

     * ##################################################### ##################################################### ## ## Erg�nze das Docstruct um
     * zusätzliche Opac-Details ## ##################################################### ####################################################
     */

    private void checkMyOpacResult(DigitalDocument inDigDoc, Prefs inPrefs, Element myFirstHit, boolean verbose) {
        UghHelper ughhelp = new UghHelper();
        DocStruct topstruct = inDigDoc.getLogicalDocStruct();
        DocStruct boundbook = inDigDoc.getPhysicalDocStruct();
        DocStruct topstructChild = null;
        Element mySecondHit = null;

        /*
         * -------------------------------- bei Multivolumes noch das Child in xml und docstruct ermitteln --------------------------------
         */
        // if (isMultivolume()) {
        if (getOpacDocType().isMultiVolume()) {
            try {
                topstructChild = topstruct.getAllChildren().get(0);
            } catch (RuntimeException e) {
            }
            mySecondHit = (Element) myFirstHit.getParentElement().getChildren().get(1);
        }

        /*
         * -------------------------------- vorhandene PPN als digitale oder analoge einsetzen --------------------------------
         */
        String ppn = getElementFieldValue(myFirstHit, "003@", "0");
        ughhelp.replaceMetadatum(topstruct, inPrefs, "CatalogIDDigital", "");
        if (this.gattung.toLowerCase().startsWith("o")) {
            ughhelp.replaceMetadatum(topstruct, inPrefs, "CatalogIDDigital", ppn);
        } else {
            ughhelp.replaceMetadatum(topstruct, inPrefs, "CatalogIDSource", ppn);
        }

        /*
         * -------------------------------- wenn es ein multivolume ist, dann auch die PPN prüfen --------------------------------
         */
        if (topstructChild != null && mySecondHit != null) {
            String secondHitppn = getElementFieldValue(mySecondHit, "003@", "0");
            ughhelp.replaceMetadatum(topstructChild, inPrefs, "CatalogIDDigital", "");
            if (this.gattung.toLowerCase().startsWith("o")) {
                ughhelp.replaceMetadatum(topstructChild, inPrefs, "CatalogIDDigital", secondHitppn);
            } else {
                ughhelp.replaceMetadatum(topstructChild, inPrefs, "CatalogIDSource", secondHitppn);
            }
        }

        /*
         * -------------------------------- den Main-Title bereinigen --------------------------------
         */
        String myTitle = getElementFieldValue(myFirstHit, "021A", "a");
        /*
         * wenn der Fulltittle nicht in dem Element stand, dann an anderer Stelle nachsehen (vor allem bei Contained-Work)
         */
        if (myTitle == null || myTitle.length() == 0) {
            myTitle = getElementFieldValue(myFirstHit, "021B", "a");
        }
        ughhelp.replaceMetadatum(topstruct, inPrefs, "TitleDocMain", myTitle.replaceAll("@", ""));

        /*
         * -------------------------------- Sorting-Titel mit Umlaut-Konvertierung --------------------------------
         */
        if (myTitle.indexOf("@") != -1) {
            myTitle = myTitle.substring(myTitle.indexOf("@") + 1);
        }
        ughhelp.replaceMetadatum(topstruct, inPrefs, "TitleDocMainShort", myTitle);

        /*
         * -------------------------------- bei multivolumes den Main-Title bereinigen --------------------------------
         */
        if (topstructChild != null && mySecondHit != null) {
            String fulltitleMulti = getElementFieldValue(mySecondHit, "021A", "a").replaceAll("@", "");
            ughhelp.replaceMetadatum(topstructChild, inPrefs, "TitleDocMain", fulltitleMulti);
        }

        /*
         * -------------------------------- bei multivolumes den Sorting-Titel mit Umlaut-Konvertierung --------------------------------
         */
        if (topstructChild != null && mySecondHit != null) {
            String sortingTitleMulti = getElementFieldValue(mySecondHit, "021A", "a");
            if (sortingTitleMulti.indexOf("@") != -1) {
                sortingTitleMulti = sortingTitleMulti.substring(sortingTitleMulti.indexOf("@") + 1);
            }
            ughhelp.replaceMetadatum(topstructChild, inPrefs, "TitleDocMainShort", sortingTitleMulti);
            // sortingTitle = sortingTitleMulti;
        }

        /*
         * -------------------------------- Sprachen - Konvertierung auf zwei Stellen --------------------------------
         */
        String sprache = getElementFieldValue(myFirstHit, "010@", "a");
        sprache = ughhelp.convertLanguage(sprache);
        ughhelp.replaceMetadatum(topstruct, inPrefs, "DocLanguage", sprache);

        /*
         * -------------------------------- bei multivolumes die Sprachen - Konvertierung auf zwei Stellen --------------------------------
         */
        if (topstructChild != null && mySecondHit != null) {
            String spracheMulti = getElementFieldValue(mySecondHit, "010@", "a");
            spracheMulti = ughhelp.convertLanguage(spracheMulti);
            ughhelp.replaceMetadatum(topstructChild, inPrefs, "DocLanguage", spracheMulti);
        }

        /*
         * -------------------------------- ISSN --------------------------------
         */
        String issn = getElementFieldValue(myFirstHit, "005A", "0");
        ughhelp.replaceMetadatum(topstruct, inPrefs, "ISSN", issn);

        /*
         * -------------------------------- Copyright --------------------------------
         */
        String copyright = getElementFieldValue(myFirstHit, "037I", "a");
        ughhelp.replaceMetadatum(boundbook, inPrefs, "copyrightimageset", copyright);

        /*
         * -------------------------------- Format --------------------------------
         */
        String format = getElementFieldValue(myFirstHit, "034I", "a");
        ughhelp.replaceMetadatum(boundbook, inPrefs, "FormatSourcePrint", format);

        /*
         * -------------------------------- Umfang --------------------------------
         */
        String umfang = getElementFieldValue(myFirstHit, "034D", "a");
        ughhelp.replaceMetadatum(topstruct, inPrefs, "SizeSourcePrint", umfang);

        /*
         * -------------------------------- Signatur --------------------------------
         */
        String sig = getElementFieldValue(myFirstHit, "209A", "c");
        if (sig.length() > 0) {
            sig = "<" + sig + ">";
        }
        sig += getElementFieldValue(myFirstHit, "209A", "f") + " ";
        sig += getElementFieldValue(myFirstHit, "209A", "a");
        ughhelp.replaceMetadatum(boundbook, inPrefs, "shelfmarksource", sig.trim());
        if (sig.trim().length() == 0) {
            myLogger.debug("Signatur part 1: " + sig);
            myLogger.debug(myFirstHit.getChildren());
            sig = getElementFieldValue(myFirstHit, "209A/01", "c");
            if (sig.length() > 0) {
                sig = "<" + sig + ">";
            }
            sig += getElementFieldValue(myFirstHit, "209A/01", "f") + " ";
            sig += getElementFieldValue(myFirstHit, "209A/01", "a");
            if (mySecondHit != null) {
                sig += getElementFieldValue(mySecondHit, "209A", "f") + " ";
                sig += getElementFieldValue(mySecondHit, "209A", "a");
            }
            ughhelp.replaceMetadatum(boundbook, inPrefs, "shelfmarksource", sig.trim());
        }
        myLogger.debug("Signatur full: " + sig);

        /*
         * -------------------------------- Ats Tsl Vorbereitung --------------------------------
View Full Code Here

Examples of de.sub.goobi.helper.UghHelper

 

  @SuppressWarnings("unchecked")
  public void ImagepfadKorrigieren() throws DAOException {
    UghHelper ughhelp = new UghHelper();
    Session session = Helper.getHibernateSession();
    Criteria crit = session.createCriteria(Prozess.class);

 
    List<Prozess> auftraege = crit.list();

    /* alle Prozesse durchlaufen */
    for (Prozess p : auftraege) {
     

      if (p.getBenutzerGesperrt() != null) {
        Helper.setFehlerMeldung("metadata locked: ", p.getTitel());
      } else {
        myLogger.debug("Prozess: " + p.getTitel());
        Prefs myPrefs = p.getRegelsatz().getPreferences();
        Fileformat gdzfile;
        try {
          gdzfile = p.readMetadataFile();

          MetadataType mdt = ughhelp.getMetadataType(myPrefs, "pathimagefiles");
          List<? extends Metadata> alleMetadaten = gdzfile.getDigitalDocument().getPhysicalDocStruct().getAllMetadataByType(mdt);
          if (alleMetadaten != null && alleMetadaten.size() > 0) {
            Metadata md = alleMetadaten.get(0);
            myLogger.debug(md.getValue());

View Full Code Here

Examples of de.sub.goobi.helper.UghHelper

  }

 
  @SuppressWarnings("unchecked")
  public void PPNsKorrigieren() throws DAOException {
    UghHelper ughhelp = new UghHelper();

    Session session = Helper.getHibernateSession();
    Criteria crit = session.createCriteria(Prozess.class);
    crit.add(Restrictions.eq("istTemplate", Boolean.valueOf(false)));
    crit.createCriteria("projekt", "proj");
    crit.add(Restrictions.like("proj.titel", "DigiZeitschriften"));
   
    List<Prozess> auftraege = crit.list();

    /* alle Prozesse durchlaufen */
    for (Prozess p : auftraege) {
   
      if (p.getBenutzerGesperrt() != null) {
        Helper.setFehlerMeldung("metadata locked: ", p.getTitel());
      } else {
        String myBandnr = p.getTitel();
        StringTokenizer tokenizer = new StringTokenizer(p.getTitel(), "_");
        while (tokenizer.hasMoreTokens()) {
          myBandnr = "_" + tokenizer.nextToken();
        }
        Prefs myPrefs = p.getRegelsatz().getPreferences();
        try {
          Fileformat gdzfile = p.readMetadataFile();
          DocStruct dsTop = gdzfile.getDigitalDocument().getLogicalDocStruct();
          DocStruct dsFirst = null;
          if (dsTop.getAllChildren() != null && dsTop.getAllChildren().size() > 0) {
            dsFirst = dsTop.getAllChildren().get(0);
          }

          MetadataType mdtPpnDigital = ughhelp.getMetadataType(myPrefs, "CatalogIDDigital");
          MetadataType mdtPpnAnalog = ughhelp.getMetadataType(myPrefs, "CatalogIDSource");
          List<? extends Metadata> alleMetadaten;

          /* digitale PPN korrigieren */
          if (dsFirst != null) {
            alleMetadaten = dsFirst.getAllMetadataByType(mdtPpnDigital);
            if (alleMetadaten != null && alleMetadaten.size() > 0) {
              Metadata md = alleMetadaten.get(0);
              myLogger.debug(md.getValue());
              if (!md.getValue().endsWith(myBandnr)) {
                md.setValue(md.getValue() + myBandnr);
                Helper.setMeldung(null, "PPN digital adjusted: ", p.getTitel());
              }
            }

            /* analoge PPN korrigieren */
            alleMetadaten = dsFirst.getAllMetadataByType(mdtPpnAnalog);
            if (alleMetadaten != null && alleMetadaten.size() > 0) {
              Metadata md1 = alleMetadaten.get(0);
              myLogger.debug(md1.getValue());
              if (!md1.getValue().endsWith(myBandnr)) {
                md1.setValue(md1.getValue() + myBandnr);
                Helper.setMeldung(null, "PPN analog adjusted: ", p.getTitel());
              }
            }
          }

          /* Collections korrigieren */
          List<String> myKollektionenTitel = new ArrayList<String>();
          MetadataType coltype = ughhelp.getMetadataType(myPrefs, "singleDigCollection");
          ArrayList<Metadata> myCollections;
          if (dsTop.getAllMetadataByType(coltype) != null && dsTop.getAllMetadataByType(coltype).size() != 0) {
            myCollections = new ArrayList<Metadata>(dsTop.getAllMetadataByType(coltype));
            if (myCollections != null && myCollections.size() > 0) {
              for (Metadata md : myCollections) {
View Full Code Here

Examples of de.sub.goobi.helper.UghHelper


  //TODO: Remove this
  @SuppressWarnings("unchecked")
  public static void PPNsFuerStatistischesJahrbuchKorrigieren2() {
    UghHelper ughhelp = new UghHelper();
    Session session = Helper.getHibernateSession();
    Criteria crit = session.createCriteria(Prozess.class);
    crit.add(Restrictions.eq("istTemplate", Boolean.valueOf(false)));
    crit.add(Restrictions.like("titel", "statjafud%"));
    /* alle Prozesse durchlaufen */
    List<Prozess> pl = crit.list();
    for (Prozess p : pl) {
   
      if (p.getBenutzerGesperrt() != null) {
        Helper.setFehlerMeldung("metadata locked: " + p.getTitel());
      } else {
        Prefs myPrefs = p.getRegelsatz().getPreferences();
        try {
          Fileformat gdzfile = p.readMetadataFile();
          DocStruct dsTop = gdzfile.getDigitalDocument().getLogicalDocStruct();
          MetadataType mdtPpnDigital = ughhelp.getMetadataType(myPrefs, "CatalogIDSource");

          /* analoge PPN korrigieren */
          if (dsTop != null) {
            List<? extends Metadata> alleMetadaten = dsTop.getAllMetadataByType(mdtPpnDigital);
            if (alleMetadaten != null && alleMetadaten.size() > 0) {
View Full Code Here

Examples of de.sub.goobi.helper.UghHelper

    Helper.setMeldung("PPNs adjusted");
  }

  @SuppressWarnings("unchecked")
  public void PPNsFuerStatistischesJahrbuchKorrigieren() throws DAOException {
    UghHelper ughhelp = new UghHelper();
    BeanHelper bhelp = new BeanHelper();
    Session session = Helper.getHibernateSession();
    Criteria crit = session.createCriteria(Prozess.class);
    crit.add(Restrictions.eq("istTemplate", Boolean.valueOf(false)));
    crit.createCriteria("projekt", "proj");
    crit.add(Restrictions.like("proj.titel", "UB-MannheimDigizeit"));

    /* alle Prozesse durchlaufen */
    for (Iterator<Prozess> iter = crit.list().iterator(); iter.hasNext();) {
      Prozess p = iter.next();
      if (p.getBenutzerGesperrt() != null) {
        Helper.setFehlerMeldung("metadata locked: ", p.getTitel());
      } else {
        String ppn = bhelp.WerkstueckEigenschaftErmitteln(p, "PPN digital").replace("PPN ", "").replace("PPN", "");
        String jahr = bhelp.ScanvorlagenEigenschaftErmitteln(p, "Bandnummer");
        String ppnAufBandebene = "PPN" + ppn + "_" + jahr;

        Prefs myPrefs = p.getRegelsatz().getPreferences();
        try {
          Fileformat gdzfile = p.readMetadataFile();
          DocStruct dsTop = gdzfile.getDigitalDocument().getLogicalDocStruct();
          DocStruct dsFirst = null;
          if (dsTop.getAllChildren() != null && dsTop.getAllChildren().size() > 0) {
            dsFirst = dsTop.getAllChildren().get(0);
          }

          MetadataType mdtPpnDigital = ughhelp.getMetadataType(myPrefs, "CatalogIDDigital");

          /* digitale PPN korrigieren */
          if (dsFirst != null) {
            List<? extends Metadata> alleMetadaten = dsFirst.getAllMetadataByType(mdtPpnDigital);
            if (alleMetadaten == null || alleMetadaten.size() == 0) {
              Metadata md = new Metadata(mdtPpnDigital);
              md.setValue(ppnAufBandebene);
              dsFirst.addMetadata(md);
            }
          }

          /* Collections korrigieren */
          List<String> myKollektionenTitel = new ArrayList<String>();
          MetadataType coltype = ughhelp.getMetadataType(myPrefs, "singleDigCollection");
          ArrayList<Metadata> myCollections;
          if (dsTop.getAllMetadataByType(coltype) != null) {
            myCollections = new ArrayList<Metadata>(dsTop.getAllMetadataByType(coltype));
            if (myCollections != null && myCollections.size() > 0) {
              for (Iterator<Metadata> it = myCollections.iterator(); it.hasNext();) {
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.