urn

Object storage library

Лицензия

Лицензия

Группа

Группа

com.sangupta
Идентификатор

Идентификатор

urn
Последняя версия

Последняя версия

0.1.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

urn
Object storage library
Ссылка на сайт

Ссылка на сайт

http://sangupta.com/projects/urn
Система контроля версий

Система контроля версий

https://github.com/sangupta/urn

Скачать urn

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/com.sangupta/urn/ -->
<dependency>
    <groupId>com.sangupta</groupId>
    <artifactId>urn</artifactId>
    <version>0.1.0</version>
</dependency>
// https://jarcasting.com/artifacts/com.sangupta/urn/
implementation 'com.sangupta:urn:0.1.0'
// https://jarcasting.com/artifacts/com.sangupta/urn/
implementation ("com.sangupta:urn:0.1.0")
'com.sangupta:urn:jar:0.1.0'
<dependency org="com.sangupta" name="urn" rev="0.1.0">
  <artifact name="urn" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.sangupta', module='urn', version='0.1.0')
)
libraryDependencies += "com.sangupta" % "urn" % "0.1.0"
[com.sangupta/urn "0.1.0"]

Зависимости

compile (1)

Идентификатор библиотеки Тип Версия
com.sangupta : jerry-core jar 2.4.0

provided (2)

Идентификатор библиотеки Тип Версия
org.springframework.data : spring-data-mongodb jar 1.8.2.RELEASE
org.springframework.data : spring-data-redis jar 1.6.2.RELEASE

test (4)

Идентификатор библиотеки Тип Версия
junit : junit jar 4.12
com.github.fakemongo : fongo jar 1.6.5
com.sangupta : dryrun jar 0.1.0
com.fiftyonred : mock-jedis jar 0.4.0

Модули Проекта

Данный проект не имеет модулей.

urn

Build Status Coverage Status Maven Version

urn is a Java library that helps integrate with different object stores via a simple API, allowing you to change the provider at runtime without changing the code.

Currently available object store providers:

  • In-memory
  • Flat-file on disk
  • Redis
  • MongoDB - collection based
  • MongoDB - GridFS based

Ones in the pipeline:

  • Amazon S3
  • SeaWeedFS
  • LevelDB
  • RocksDB
  • SQlite

Features

  • Ability for time-based eviction of each individual asset (depends on provider)
  • Metadata storage with object like MIME type
  • Custom name that can be set, different from the unique key

Feature Roadmap

  • A simple server that can serve the raw stream using the key

Usage

Using urn is pretty straight-forward:

UrnStorageService service = new RedisUrnStorageServiceImpl();

String objectKey = "myObject-123";

// save a new object
service.saveObject(objectKey, getRandomBytes());

// check if the object is saved or not
service.existsObject(objectKey); // returns true

// retrieve data
service.getObjectBytes(objectKey); // returns the byte[]

// delete object
service.remove(objectKey);
service.existsObject(objectKey); // returns false

Versioning

For transparency and insight into our release cycle, and for striving to maintain backward compatibility, urn will be maintained under the Semantic Versioning guidelines as much as possible.

Releases will be numbered with the follow format:

<major>.<minor>.<patch>

And constructed with the following guidelines:

  • Breaking backward compatibility bumps the major
  • New additions without breaking backward compatibility bumps the minor
  • Bug fixes and misc changes bump the patch

For more information on SemVer, please visit http://semver.org/.

License

urn - Object storage library
Copyright (c) 2016, Sandeep Gupta

http://sangupta.com/projects/urn

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.

Версии библиотеки

Версия
0.1.0