Moving from Grafoscopio to an external project. The dependencies for installing Grafoscopio, need to include this now.

This commit is contained in:
Offray Vladimir Luna Cárdenas 2017-06-01 12:12:11 +00:00
parent 7e8ac68e3b
commit 8aa5b42f94
4 changed files with 70 additions and 0 deletions

3
.project Normal file
View File

@ -0,0 +1,3 @@
{
'srcDirectory' : 'repository'
}

3
repository/.properties Normal file
View File

@ -0,0 +1,3 @@
{
#format : #tonel
}

View File

@ -0,0 +1,63 @@
"
I model a fossil repository. For details about fossil see:
http://fossil-scm.org/
"
Class {
#name : #FossilRepo,
#superclass : #Object,
#instVars : [
'url'
],
#category : #Fossil
}
{ #category : #querying }
FossilRepo >> checkinsFor: relativeFilePath [
"I get all histotical checkins information for a full file name, wich includes relative path
in the repository (i.e: 'Doc/Es/Tutoriales/tutorial.ston' or 'index.html's)"
(self jsonDataFor: relativeFilePath) = self ifTrue: [
self inform:
'WARNING! Key not found, verify the file name you are looking in this repository'.
^ self ].
^ (((self jsonDataFor: relativeFilePath) at: 'payload') at: 'checkins')
]
{ #category : #querying }
FossilRepo >> jsonDataFor: aFileName [
| answer |
answer := NeoJSONReader fromString: (self jsonStringFor: aFileName).
(answer keys includes: 'resultText') ifTrue: [
(answer at: 'resultText') = 'File entry not found.'
ifTrue: [
self inform: 'WARNING! ', (answer at: 'resultText'),
' Verify the file path you are entering'.
^ self]
].
^ answer
]
{ #category : #querying }
FossilRepo >> jsonStringFor: aFileName [
| queryForJSONData |
queryForJSONData := self url addPathSegments: #('json' 'finfo').
queryForJSONData queryAt: 'name' put: aFileName.
^ (ZnEasy get: queryForJSONData) contents.
]
{ #category : #querying }
FossilRepo >> lastHashNumberFor: aFileName [
"I'm useful to see if local versions of files are updated to the last versions of the
online repository"
^ (self checkinsFor: aFileName) first at: 'uuid'
]
{ #category : #accessing }
FossilRepo >> url [
^ url
]
{ #category : #accessing }
FossilRepo >> url: aString [
url := aString asUrl
]

View File

@ -0,0 +1 @@
Package { #name : #Fossil }