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

br.com.objectos.git.MaterializeCommand.plantuml Maven / Gradle / Ivy

Go to download

ObjectosGit is a pure Java library that provides a limited set of GIT operations.

The newest version!
'
' Copyright (C) 2020-2022 Objectos Software LTDA.
'
' 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.
'

@startuml

hide empty description
skinparam shadowing false

[*] --> VALIDATE_TARGET

CREATE_IO_EXCEPTION --> FINALLY

IO --> IO_WAIT

IO_WAIT --> FINALLY : IOException
IO_WAIT --> IO_WAIT : wait some more
IO_WAIT --> ENTRY : ioReady

ENTRY --> FETCH_BLOB : isBlob()
ENTRY --> PUSH_TREE : isTree()
ENTRY --> POP_TREE

FETCH_BLOB --> ENTRY : hasNextEntry()
FETCH_BLOB --> FETCH_BLOB : shouldExecute()
FETCH_BLOB --> FINALLY : getResult() (IOException)

FETCH_COMMIT --> FETCH_COMMIT : shouldExecute()
FETCH_COMMIT --> FETCH_TREE : getResult() (Commit)
FETCH_COMMIT --> FINALLY : getResult() (IOException)

FETCH_TREE --> FETCH_TREE : shouldExecute()
FETCH_TREE --> FINALLY : getResult() (IOException)
FETCH_TREE --> TREE : getResult() (Tree)

FINALLY --> RESULT

POP_TREE --> ENTRY
POP_TREE --> FINALLY : stack.isEmpty()

PUSH_TREE --> FETCH_TREE

RESULT --> [*]

TREE --> IO : ioAction=ENTRY\lioTask=createDirectoryOrRegularFile

VALIDATE_TARGET --> CREATE_IO_EXCEPTION : !isEmpty()
VALIDATE_TARGET --> FETCH_COMMIT : isEmpty()

@enduml




© 2015 - 2025 Weber Informatics LLC | Privacy Policy