Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  Client3.java   Sprache: JAVA

 

package wrappers;

import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Set;

public class Client3 {
 static boolean DEBUG = true;
 static final Console c = System.console();
 static Mongo3Interface jdi = null;

 public static void main(String[] args) {
  int rc, level = 0;
  boolean brc, desc = false;
  Set<String> columns;
  String[] parms = new String[4];

  jdi = new Mongo3Interface(DEBUG);

  parms[0] = getLine("URI: ", false);
  parms[1] = getLine("Database: ", false);
  parms[2] = null;
  parms[3] = null;

  if (parms[0] == null)
   parms[0] = "mongodb://localhost:27017";

  if (parms[1] == null)
   parms[1] = "test";

  rc = jdi.MongoConnect(parms);

  if (rc == 0) {
   String name, pipeline, query, fields;
   System.out.println("Successfully connected to " + parms[0]);

   while ((name = getLine("Collection: ", false)) != null) {
    if (jdi.GetCollection(name))
     System.out.println("GetCollection failed");
    else
     System.out.println("Collection size: " + jdi.GetCollSize());

    pipeline = getLine("Pipeline: ", false);

    if (pipeline == null || (desc = pipeline.equals("*"))) {
     query = getLine("Filter: ", false);
     fields = getLine("Proj: ", false);

     if (desc)
      level = Integer.parseInt(getLine("Level: ", false));

     brc = jdi.FindColl(query, fields);
    } else
     brc = jdi.AggregateColl(pipeline);

    System.out.println("Returned brc = " + brc);

    if (!brc && !desc) {
     for (int i = 0; jdi.ReadNext() > 0 && i < 10; i++) {
      columns = jdi.GetColumns();

      for (String col : columns)
       System.out.println(col + "=" + jdi.GetField(col));

      if (name.equalsIgnoreCase("gtst"))
       System.out.println("gtst=" + jdi.GetField("*"));

      if (name.equalsIgnoreCase("inventory")) {
       System.out.println("warehouse=" + jdi.GetField("instock.0.warehouse"));
       System.out.println("quantity=" + jdi.GetField("instock.1.qty"));
      } // endif inventory

      if (name.equalsIgnoreCase("restaurants")) {
       System.out.println("score=" + jdi.GetField("grades.0.score"));
       System.out.println("date=" + jdi.GetField("grades.0.date"));
      } // endif inventory

     } // endfor i

    } else if (desc) {
     int ncol;

     for (int i = 0; (ncol = jdi.ReadNext()) > 0 && i < 2; i++) {
      if (discovery(null, "", ncol, level))
       break;

      System.out.println("--------------");
     } // endfor i

    } // endif desc

   } // endwhile query

   rc = jdi.MongoDisconnect();
   System.out.println("Disconnect returned " + rc);
  } else
   System.out.println(jdi.GetErrmsg() + " rc=" + rc);

 } // end of main

 private static boolean discovery(Object obj, String name, int ncol, int level) {
  int[] val = new int[5];
  Object ret = null;
  String bvn = null;

  for (int k = 0; k < ncol; k++) {
   ret = jdi.ColumnDesc(obj, k, val, level);
   bvn = jdi.ColDescName();

   if (ret != null)
    discovery(ret, name.concat(bvn).concat("."), val[4], level - 1);
   else if (val[0] > 0)
    System.out.println(
      name + bvn + ": type=" + val[0] + " length=" + val[1] + " prec=" + val[2] + " nullable=" + val[3]);
   else if (val[0] < 0)
    System.out.println(jdi.GetErrmsg());

  } // endfor k

  return false;
 } // end of discovery

 // ==================================================================
 private static String getLine(String p, boolean b) {
  String response;

  if (c != null) {
   // Standard console mode
   if (b) {
    response = new String(c.readPassword(p));
   } else
    response = c.readLine(p);

  } else {
   // For instance when testing from Eclipse
   BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

   System.out.print(p);

   try {
    // Cannot suppress echo for password entry
    response = in.readLine();
   } catch (IOException e) {
    response = "";
   } // end of try/catch

  } // endif c

  return (response.isEmpty()) ? null : response;
 } // end of getLine

} // end of class Client

Messung V0.5 in Prozent
C=89 H=88 G=88

¤ Dauer der Verarbeitung: 0.11 Sekunden  (vorverarbeitet am  2026-10-08) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1126438
#Domains=1867298