All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.mongodb.gridfs.CLI Maven / Gradle / Ivy

Go to download

The MongoDB Java Driver uber-artifact, containing mongodb-driver, mongodb-driver-core, and bson

There is a newer version: 3.1.0
Show newest version
/*
 * Copyright (c) 2008-2014 MongoDB, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// CLI.java

package com.mongodb.gridfs;

import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.util.Util;

import java.io.File;
import java.security.DigestInputStream;
import java.security.MessageDigest;


/**
 * a simple CLI for Gridfs
 */
public class CLI {
    
    /**
     *  Dumps usage info to stdout
     */
    private static void printUsage() {
        System.out.println("Usage : [--db database] action");
        System.out.println("  where  action is one of:");
        System.out.println("      list                      : lists all files in the store");
        System.out.println("      put filename              : puts the file filename into the store");
        System.out.println("      get filename1 filename2   : gets filename1 from store and sends to filename2");
        System.out.println("      md5 filename              : does an md5 hash on a file in the db (for testing)");
    }

    private static String db = "test";
    private static String uri = "mongodb://127.0.0.1";
    private static Mongo _mongo = null;

    @SuppressWarnings("deprecation")
    private static Mongo getMongo()
        throws Exception {
        if ( _mongo == null )  {
            _mongo = new MongoClient(new MongoClientURI(uri));
        }
        return _mongo;
    }
    
    private static GridFS _gridfs;
    private static GridFS getGridFS()
        throws Exception {
        if ( _gridfs == null )
            _gridfs = new GridFS( getMongo().getDB( db ) );
        return _gridfs;
    }

    // CHECKSTYLE:OFF
    public static void main(String[] args) throws Exception {
        
        if ( args.length < 1 ){
            printUsage();
            return;
        }
        
        for ( int i=0; i= 0 ){ 
                    read++;
                    int r = is.read( new byte[17] ); 
                    if ( r < 0 )
                        break;
                    read += r;
                }
                byte[] digest = md5.digest();
                System.out.println( "length: " + read + " md5: " + Util.toHex( digest ) );
                return;
            }
            
            
            System.err.println( "unknown option: " + s );
            return;
        }
        
    }
    // CHECKSTYLE:ON

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy