generated from Luis/nextjs-python-web-template
Trying to fix attach entity #44
@@ -80,6 +80,8 @@ def main() -> None:
|
|||||||
replacement = "from typing import Any, List, Optional, Dict"
|
replacement = "from typing import Any, List, Optional, Dict"
|
||||||
replace_in_directory(directory_path=src_client, pattern=pattern, replacement=replacement)
|
replace_in_directory(directory_path=src_client, pattern=pattern, replacement=replacement)
|
||||||
|
|
||||||
|
src_clients_tests = src_client / "test"
|
||||||
|
shutil.rmtree(src_clients_tests)
|
||||||
dst_client: Path = args.out / "openapi_client"
|
dst_client: Path = args.out / "openapi_client"
|
||||||
shutil.rmtree(dst_client, ignore_errors=True)
|
shutil.rmtree(dst_client, ignore_errors=True)
|
||||||
shutil.copytree(src_client, dst_client)
|
shutil.copytree(src_client, dst_client)
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ from ..schemas import (
|
|||||||
Resolution,
|
Resolution,
|
||||||
Service,
|
Service,
|
||||||
ServiceCreate,
|
ServiceCreate,
|
||||||
ServicesByName,
|
|
||||||
)
|
)
|
||||||
from ..tags import Tags
|
from ..tags import Tags
|
||||||
|
|
||||||
@@ -30,7 +29,7 @@ log = logging.getLogger(__name__)
|
|||||||
# #
|
# #
|
||||||
#########################
|
#########################
|
||||||
@router.post("/api/v1/service", response_model=Service, tags=[Tags.services])
|
@router.post("/api/v1/service", response_model=Service, tags=[Tags.services])
|
||||||
async def create_service(
|
def create_service(
|
||||||
service: ServiceCreate, db: Session = Depends(sql_db.get_db)
|
service: ServiceCreate, db: Session = Depends(sql_db.get_db)
|
||||||
) -> Service:
|
) -> Service:
|
||||||
# todo checken ob schon da ...
|
# todo checken ob schon da ...
|
||||||
@@ -38,17 +37,15 @@ async def create_service(
|
|||||||
|
|
||||||
|
|
||||||
@router.get("/api/v1/services", response_model=List[Service], tags=[Tags.services])
|
@router.get("/api/v1/services", response_model=List[Service], tags=[Tags.services])
|
||||||
async def get_all_services(
|
def get_all_services(
|
||||||
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
||||||
) -> List[sql_models.Service]:
|
) -> List[sql_models.Service]:
|
||||||
services = sql_crud.get_services(db, skip=skip, limit=limit)
|
services = sql_crud.get_services(db, skip=skip, limit=limit)
|
||||||
return services
|
return services
|
||||||
|
|
||||||
|
|
||||||
@router.get(
|
@router.get("/api/v1/service", response_model=List[Service], tags=[Tags.services])
|
||||||
"/api/v1/{entity_did}/service", response_model=List[Service], tags=[Tags.services]
|
def get_service_by_did(
|
||||||
)
|
|
||||||
async def get_service_by_did(
|
|
||||||
entity_did: str = "did:sov:test:1234",
|
entity_did: str = "did:sov:test:1234",
|
||||||
skip: int = 0,
|
skip: int = 0,
|
||||||
limit: int = 100,
|
limit: int = 100,
|
||||||
@@ -59,25 +56,22 @@ async def get_service_by_did(
|
|||||||
|
|
||||||
|
|
||||||
@router.get(
|
@router.get(
|
||||||
"/api/v1/services_by_entity_name",
|
"/api/v1/services_without_entity",
|
||||||
response_model=ServicesByName,
|
response_model=List[Service],
|
||||||
tags=[Tags.services],
|
tags=[Tags.services],
|
||||||
)
|
)
|
||||||
async def get_services_by_name(
|
def get_services_without_entity(
|
||||||
entity_name: str,
|
entity_did: str = "did:sov:test:1234",
|
||||||
skip: int = 0,
|
skip: int = 0,
|
||||||
limit: int = 100,
|
limit: int = 100,
|
||||||
db: Session = Depends(sql_db.get_db),
|
db: Session = Depends(sql_db.get_db),
|
||||||
) -> ServicesByName:
|
) -> List[sql_models.Service]:
|
||||||
entity = sql_crud.get_entity_by_name(db, name=entity_name)
|
service = sql_crud.get_services_without_entity_id(db, entity_did=entity_did)
|
||||||
if entity is None:
|
return service
|
||||||
raise ClanError(f"Entity with name '{entity_name}' not found")
|
|
||||||
services = sql_crud.get_services_by_entity_did(db, entity_did=str(entity.did))
|
|
||||||
return ServicesByName(entity=entity, services=services) # type: ignore
|
|
||||||
|
|
||||||
|
|
||||||
@router.delete("/api/v1/{entity_did}/service", tags=[Tags.services])
|
@router.delete("/api/v1/service", tags=[Tags.services])
|
||||||
async def delete_service(
|
def delete_service(
|
||||||
entity_did: str = "did:sov:test:1234",
|
entity_did: str = "did:sov:test:1234",
|
||||||
db: Session = Depends(sql_db.get_db),
|
db: Session = Depends(sql_db.get_db),
|
||||||
) -> dict[str, str]:
|
) -> dict[str, str]:
|
||||||
@@ -95,7 +89,7 @@ async def delete_service(
|
|||||||
response_model=List[Service],
|
response_model=List[Service],
|
||||||
tags=[Tags.repositories],
|
tags=[Tags.repositories],
|
||||||
)
|
)
|
||||||
async def get_all_repositories(
|
def get_all_repositories(
|
||||||
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
||||||
) -> List[sql_models.Service]:
|
) -> List[sql_models.Service]:
|
||||||
repositories = sql_crud.get_services(db, skip=skip, limit=limit)
|
repositories = sql_crud.get_services(db, skip=skip, limit=limit)
|
||||||
@@ -108,7 +102,7 @@ async def get_all_repositories(
|
|||||||
# #
|
# #
|
||||||
#########################
|
#########################
|
||||||
@router.post("/api/v1/entity", response_model=Entity, tags=[Tags.entities])
|
@router.post("/api/v1/entity", response_model=Entity, tags=[Tags.entities])
|
||||||
async def create_entity(
|
def create_entity(
|
||||||
entity: EntityCreate, db: Session = Depends(sql_db.get_db)
|
entity: EntityCreate, db: Session = Depends(sql_db.get_db)
|
||||||
) -> EntityCreate:
|
) -> EntityCreate:
|
||||||
return sql_crud.create_entity(db, entity)
|
return sql_crud.create_entity(db, entity)
|
||||||
@@ -117,7 +111,7 @@ async def create_entity(
|
|||||||
@router.get(
|
@router.get(
|
||||||
"/api/v1/entity_by_name", response_model=Optional[Entity], tags=[Tags.entities]
|
"/api/v1/entity_by_name", response_model=Optional[Entity], tags=[Tags.entities]
|
||||||
)
|
)
|
||||||
async def get_entity_by_name(
|
def get_entity_by_name(
|
||||||
entity_name: str, db: Session = Depends(sql_db.get_db)
|
entity_name: str, db: Session = Depends(sql_db.get_db)
|
||||||
) -> Optional[sql_models.Entity]:
|
) -> Optional[sql_models.Entity]:
|
||||||
entity = sql_crud.get_entity_by_name(db, name=entity_name)
|
entity = sql_crud.get_entity_by_name(db, name=entity_name)
|
||||||
@@ -125,17 +119,15 @@ async def get_entity_by_name(
|
|||||||
|
|
||||||
|
|
||||||
@router.get("/api/v1/entities", response_model=List[Entity], tags=[Tags.entities])
|
@router.get("/api/v1/entities", response_model=List[Entity], tags=[Tags.entities])
|
||||||
async def get_all_entities(
|
def get_all_entities(
|
||||||
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
||||||
) -> List[sql_models.Entity]:
|
) -> List[sql_models.Entity]:
|
||||||
entities = sql_crud.get_entities(db, skip=skip, limit=limit)
|
entities = sql_crud.get_entities(db, skip=skip, limit=limit)
|
||||||
return entities
|
return entities
|
||||||
|
|
||||||
|
|
||||||
@router.get(
|
@router.get("/api/v1/entity", response_model=Optional[Entity], tags=[Tags.entities])
|
||||||
"/api/v1/{entity_did}/entity", response_model=Optional[Entity], tags=[Tags.entities]
|
def get_entity_by_did(
|
||||||
)
|
|
||||||
async def get_entity_by_did(
|
|
||||||
entity_did: str = "did:sov:test:1234",
|
entity_did: str = "did:sov:test:1234",
|
||||||
db: Session = Depends(sql_db.get_db),
|
db: Session = Depends(sql_db.get_db),
|
||||||
) -> Optional[sql_models.Entity]:
|
) -> Optional[sql_models.Entity]:
|
||||||
@@ -148,61 +140,97 @@ async def get_entity_by_did(
|
|||||||
response_model=List[Entity],
|
response_model=List[Entity],
|
||||||
tags=[Tags.entities],
|
tags=[Tags.entities],
|
||||||
)
|
)
|
||||||
async def get_attached_entities(
|
def get_attached_entities(
|
||||||
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
skip: int = 0, limit: int = 100, db: Session = Depends(sql_db.get_db)
|
||||||
) -> List[sql_models.Entity]:
|
) -> List[sql_models.Entity]:
|
||||||
entities = sql_crud.get_attached_entities(db, skip=skip, limit=limit)
|
entities = sql_crud.get_attached_entities(db, skip=skip, limit=limit)
|
||||||
return entities
|
return entities
|
||||||
|
|
||||||
|
|
||||||
@router.post("/api/v1/{entity_did}/detach", response_model=Entity, tags=[Tags.entities])
|
@router.post("/api/v1/detach", tags=[Tags.entities])
|
||||||
async def detach_entity(
|
def detach_entity(
|
||||||
background_tasks: BackgroundTasks,
|
|
||||||
entity_did: str = "did:sov:test:1234",
|
|
||||||
skip: int = 0,
|
|
||||||
limit: int = 100,
|
|
||||||
db: Session = Depends(sql_db.get_db),
|
|
||||||
) -> sql_models.Entity:
|
|
||||||
entity = sql_crud.set_attached_by_entity_did(db, entity_did, False)
|
|
||||||
return entity
|
|
||||||
|
|
||||||
|
|
||||||
@router.post("/api/v1/{entity_did}/attach", tags=[Tags.entities])
|
|
||||||
async def attach_entity(
|
|
||||||
background_tasks: BackgroundTasks,
|
background_tasks: BackgroundTasks,
|
||||||
entity_did: str = "did:sov:test:1234",
|
entity_did: str = "did:sov:test:1234",
|
||||||
skip: int = 0,
|
skip: int = 0,
|
||||||
limit: int = 100,
|
limit: int = 100,
|
||||||
db: Session = Depends(sql_db.get_db),
|
db: Session = Depends(sql_db.get_db),
|
||||||
) -> dict[str, str]:
|
) -> dict[str, str]:
|
||||||
if sql_crud.get_entity_by_did(db, entity_did) is None:
|
entity = sql_crud.get_entity_by_did(db, did=entity_did)
|
||||||
|
if entity is None:
|
||||||
|
raise ClanError(f"Entity with did '{entity_did}' not found")
|
||||||
|
sql_crud.set_stop_health_task(db, entity_did, True)
|
||||||
|
return {"message": f"Detached {entity_did} successfully"}
|
||||||
|
|
||||||
|
|
||||||
|
@router.post("/api/v1/attach", tags=[Tags.entities])
|
||||||
|
def attach_entity(
|
||||||
|
background_tasks: BackgroundTasks,
|
||||||
|
entity_did: str = "did:sov:test:1234",
|
||||||
|
skip: int = 0,
|
||||||
|
limit: int = 100,
|
||||||
|
db: Session = Depends(sql_db.get_db),
|
||||||
|
) -> dict[str, str]:
|
||||||
|
entity = sql_crud.get_entity_by_did(db, did=entity_did)
|
||||||
|
if entity is None:
|
||||||
|
raise ClanError(f"Entity with did '{entity_did}' not found")
|
||||||
|
url = f"http://{entity.ip}"
|
||||||
|
sql_crud.set_stop_health_task(db, entity_did, False)
|
||||||
|
print("Start health query at", url)
|
||||||
|
background_tasks.add_task(attach_entity_loc, db, entity_did)
|
||||||
|
return {"message": f"Started attachment task for {entity.name}"}
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/api/v1/is_attached", tags=[Tags.entities])
|
||||||
|
def is_attached(
|
||||||
|
entity_did: str = "did:sov:test:1234", db: Session = Depends(sql_db.get_db)
|
||||||
|
) -> dict[str, str]:
|
||||||
|
entity = sql_crud.get_entity_by_did(db, did=entity_did)
|
||||||
|
|
||||||
|
if entity is None:
|
||||||
raise ClanError(f"Entity with did '{entity_did}' not found")
|
raise ClanError(f"Entity with did '{entity_did}' not found")
|
||||||
|
|
||||||
background_tasks.add_task(attach_entity_loc, db, entity_did)
|
timer = 0.0
|
||||||
return {"message": "Attaching in the background"}
|
timeout = 2
|
||||||
|
while not entity.attached:
|
||||||
|
time.sleep(0.1)
|
||||||
|
|
||||||
|
timer += 0.1
|
||||||
|
if timer > timeout:
|
||||||
|
url = f"http://{entity.ip}"
|
||||||
|
raise ClanError(f"Entity at {url} not reachable")
|
||||||
|
|
||||||
|
db.refresh(entity)
|
||||||
|
return {"message": f"Attached to {entity.name} successfully"}
|
||||||
|
|
||||||
|
|
||||||
def attach_entity_loc(db: Session, entity_did: str) -> None:
|
def attach_entity_loc(db: Session, entity_did: str) -> None:
|
||||||
db_entity = sql_crud.set_attached_by_entity_did(db, entity_did, True)
|
entity = sql_crud.get_entity_by_did(db, did=entity_did)
|
||||||
try:
|
try:
|
||||||
while db_entity.attached:
|
assert entity is not None
|
||||||
# query status endpoint
|
url = f"http://{entity.ip}"
|
||||||
# https://www.python-httpx.org/
|
|
||||||
response = httpx.get(f"http://{db_entity.ip}", timeout=2)
|
while entity.stop_health_task is False:
|
||||||
print(response)
|
response = httpx.get(url, timeout=2)
|
||||||
# test with:
|
if response.status_code != 200:
|
||||||
# while true ; do printf 'HTTP/1.1 200 OK\r\n\r\ncool, thanks' | nc -l -N localhost 5555 ; done
|
raise ClanError(
|
||||||
# client test (apt install python3-httpx):
|
f"Entity with did '{entity_did}' returned {response.status_code}"
|
||||||
# httpx http://localhost:5555
|
)
|
||||||
# except not reached set false
|
|
||||||
|
if entity.attached is False:
|
||||||
|
sql_crud.set_attached_by_entity_did(db, entity_did, True)
|
||||||
|
if entity is None:
|
||||||
|
raise ClanError(f"Entity with did '{entity_did}' has been deleted")
|
||||||
|
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
|
db.refresh(entity)
|
||||||
except Exception:
|
except Exception:
|
||||||
log.warning(f"Entity {entity_did} not reachable. Setting attached to false")
|
print(f"Entity {entity_did} not reachable at {url}")
|
||||||
|
finally:
|
||||||
db_entity = sql_crud.set_attached_by_entity_did(db, entity_did, False)
|
sql_crud.set_attached_by_entity_did(db, entity_did, False)
|
||||||
|
sql_crud.set_stop_health_task(db, entity_did, False)
|
||||||
|
|
||||||
|
|
||||||
@router.delete("/api/v1/{entity_did}/entity", tags=[Tags.entities])
|
@router.delete("/api/v1/entity", tags=[Tags.entities])
|
||||||
async def delete_entity(
|
async def delete_entity(
|
||||||
entity_did: str = "did:sov:test:1234",
|
entity_did: str = "did:sov:test:1234",
|
||||||
db: Session = Depends(sql_db.get_db),
|
db: Session = Depends(sql_db.get_db),
|
||||||
@@ -216,8 +244,6 @@ async def delete_entity(
|
|||||||
# Resolution #
|
# Resolution #
|
||||||
# #
|
# #
|
||||||
#########################
|
#########################
|
||||||
|
|
||||||
|
|
||||||
@router.get(
|
@router.get(
|
||||||
"/api/v1/resolutions", response_model=List[Resolution], tags=[Tags.resolutions]
|
"/api/v1/resolutions", response_model=List[Resolution], tags=[Tags.resolutions]
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ class EntityCreate(EntityBase):
|
|||||||
|
|
||||||
class Entity(EntityCreate):
|
class Entity(EntityCreate):
|
||||||
attached: bool = Field(...)
|
attached: bool = Field(...)
|
||||||
|
stop_health_task: bool = Field(...)
|
||||||
|
|
||||||
class Config:
|
class Config:
|
||||||
orm_mode = True
|
orm_mode = True
|
||||||
|
|||||||
Binary file not shown.
@@ -64,7 +64,9 @@ def get_services_without_entity_id(
|
|||||||
# #
|
# #
|
||||||
#########################
|
#########################
|
||||||
def create_entity(db: Session, entity: schemas.EntityCreate) -> sql_models.Entity:
|
def create_entity(db: Session, entity: schemas.EntityCreate) -> sql_models.Entity:
|
||||||
db_entity = sql_models.Entity(**entity.dict(), attached=False)
|
db_entity = sql_models.Entity(
|
||||||
|
**entity.dict(), attached=False, stop_health_task=False
|
||||||
|
)
|
||||||
db.add(db_entity)
|
db.add(db_entity)
|
||||||
db.commit()
|
db.commit()
|
||||||
db.refresh(db_entity)
|
db.refresh(db_entity)
|
||||||
@@ -100,20 +102,30 @@ def get_attached_entities(
|
|||||||
|
|
||||||
|
|
||||||
# Returns same entity if setting didnt changed something
|
# Returns same entity if setting didnt changed something
|
||||||
def set_attached_by_entity_did(
|
def set_stop_health_task(db: Session, entity_did: str, value: bool) -> None:
|
||||||
db: Session, entity_did: str, value: bool
|
|
||||||
) -> sql_models.Entity:
|
|
||||||
db_entity = get_entity_by_did(db, entity_did)
|
db_entity = get_entity_by_did(db, entity_did)
|
||||||
if db_entity is None:
|
if db_entity is None:
|
||||||
raise ClanError(f"Entity with did '{entity_did}' not found")
|
raise ClanError(f"Entity with did '{entity_did}' not found")
|
||||||
|
|
||||||
setattr(db_entity, "attached", value)
|
setattr(db_entity, "stop_health_task", value)
|
||||||
|
|
||||||
|
# save changes in db
|
||||||
|
db.add(db_entity)
|
||||||
|
db.commit()
|
||||||
|
db.refresh(db_entity)
|
||||||
|
|
||||||
|
|
||||||
|
def set_attached_by_entity_did(db: Session, entity_did: str, attached: bool) -> None:
|
||||||
|
db_entity = get_entity_by_did(db, entity_did)
|
||||||
|
if db_entity is None:
|
||||||
|
raise ClanError(f"Entity with did '{entity_did}' not found")
|
||||||
|
|
||||||
|
setattr(db_entity, "attached", attached)
|
||||||
|
|
||||||
# save changes in db
|
# save changes in db
|
||||||
db.add(db_entity)
|
db.add(db_entity)
|
||||||
db.commit()
|
db.commit()
|
||||||
db.refresh(db_entity)
|
db.refresh(db_entity)
|
||||||
return db_entity
|
|
||||||
|
|
||||||
|
|
||||||
def delete_entity_by_did(db: Session, did: str) -> None:
|
def delete_entity_by_did(db: Session, did: str) -> None:
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ class Entity(Base):
|
|||||||
ip = Column(String, index=True)
|
ip = Column(String, index=True)
|
||||||
attached = Column(Boolean, index=True)
|
attached = Column(Boolean, index=True)
|
||||||
visible = Column(Boolean, index=True)
|
visible = Column(Boolean, index=True)
|
||||||
|
stop_health_task = Column(Boolean)
|
||||||
|
|
||||||
## Non queryable body ##
|
## Non queryable body ##
|
||||||
# In here we deposit: Network, Roles, Visible, etc.
|
# In here we deposit: Network, Roles, Visible, etc.
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ from typing import Any, Dict, List
|
|||||||
|
|
||||||
class Tags(Enum):
|
class Tags(Enum):
|
||||||
services = "services"
|
services = "services"
|
||||||
clients = "clients"
|
|
||||||
entities = "entities"
|
entities = "entities"
|
||||||
repositories = "repositories"
|
repositories = "repositories"
|
||||||
resolutions = "resolution"
|
resolutions = "resolution"
|
||||||
@@ -18,10 +17,6 @@ tags_metadata: List[Dict[str, Any]] = [
|
|||||||
"name": str(Tags.services),
|
"name": str(Tags.services),
|
||||||
"description": "Operations on a service.",
|
"description": "Operations on a service.",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": str(Tags.clients),
|
|
||||||
"description": "Operations on a client.",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": str(Tags.entities),
|
"name": str(Tags.entities),
|
||||||
"description": "Operations on an entity.",
|
"description": "Operations on an entity.",
|
||||||
|
|||||||
@@ -8,7 +8,6 @@
|
|||||||
, openssh
|
, openssh
|
||||||
, pytest
|
, pytest
|
||||||
, pytest-cov
|
, pytest-cov
|
||||||
, pytest-xdist
|
|
||||||
, pytest-subprocess
|
, pytest-subprocess
|
||||||
, pytest-timeout
|
, pytest-timeout
|
||||||
, remote-pdb
|
, remote-pdb
|
||||||
@@ -56,7 +55,6 @@ let
|
|||||||
pytest
|
pytest
|
||||||
pytest-cov
|
pytest-cov
|
||||||
pytest-subprocess
|
pytest-subprocess
|
||||||
pytest-xdist
|
|
||||||
pytest-timeout
|
pytest-timeout
|
||||||
remote-pdb
|
remote-pdb
|
||||||
ipdb
|
ipdb
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
while true ; do printf 'HTTP/1.1 200 OK\r\n\r\ncool, thanks' | nc -l -N 127.0.0.1 5555 ; done
|
while true ; do printf 'HTTP/1.1 200 OK\r\n\r\ncool, thanks' | nc -l -N 127.0.0.1 7002; done
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ testpaths = "tests"
|
|||||||
faulthandler_timeout = 60
|
faulthandler_timeout = 60
|
||||||
log_level = "DEBUG"
|
log_level = "DEBUG"
|
||||||
log_format = "%(levelname)s: %(message)s"
|
log_format = "%(levelname)s: %(message)s"
|
||||||
addopts = "--cov . --cov-report term --cov-report html:.reports/html --no-cov-on-fail --durations 5 --color=yes --maxfail=1 --new-first -nauto" # Add --pdb for debugging
|
addopts = "--cov . --cov-report term --cov-report html:.reports/html --no-cov-on-fail --durations 5 --color=yes --maxfail=1 --new-first" # Add --pdb for debugging
|
||||||
norecursedirs = "tests/helpers"
|
norecursedirs = "tests/helpers"
|
||||||
markers = [ "impure" ]
|
markers = [ "impure" ]
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import pytest
|
|||||||
import uvicorn
|
import uvicorn
|
||||||
from fastapi.testclient import TestClient
|
from fastapi.testclient import TestClient
|
||||||
from openapi_client import ApiClient, Configuration
|
from openapi_client import ApiClient, Configuration
|
||||||
|
from ports import PortFunction
|
||||||
|
|
||||||
from clan_cli.webui.app import app
|
from clan_cli.webui.app import app
|
||||||
|
|
||||||
@@ -31,8 +32,8 @@ def get_health(*, url: str, max_retries: int = 20, delay: float = 0.2) -> str |
|
|||||||
|
|
||||||
# Pytest fixture to run the server in a separate process
|
# Pytest fixture to run the server in a separate process
|
||||||
@pytest.fixture(scope="session")
|
@pytest.fixture(scope="session")
|
||||||
def server_url() -> Generator[str, None, None]:
|
def server_url(unused_tcp_port: PortFunction) -> Generator[str, None, None]:
|
||||||
port = 8000
|
port = unused_tcp_port()
|
||||||
host = "127.0.0.1"
|
host = "127.0.0.1"
|
||||||
proc = Process(
|
proc = Process(
|
||||||
target=uvicorn.run,
|
target=uvicorn.run,
|
||||||
|
|||||||
@@ -42,7 +42,6 @@ from openapi_client.models.machine import Machine
|
|||||||
from openapi_client.models.resolution import Resolution
|
from openapi_client.models.resolution import Resolution
|
||||||
from openapi_client.models.service import Service
|
from openapi_client.models.service import Service
|
||||||
from openapi_client.models.service_create import ServiceCreate
|
from openapi_client.models.service_create import ServiceCreate
|
||||||
from openapi_client.models.services_by_name import ServicesByName
|
|
||||||
from openapi_client.models.status import Status
|
from openapi_client.models.status import Status
|
||||||
from openapi_client.models.validation_error import ValidationError
|
from openapi_client.models.validation_error import ValidationError
|
||||||
from openapi_client.models.validation_error_loc_inner import ValidationErrorLocInner
|
from openapi_client.models.validation_error_loc_inner import ValidationErrorLocInner
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ class EntitiesApi:
|
|||||||
self.api_client = api_client
|
self.api_client = api_client
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def attach_entity(self, entity_did : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> Dict[str, str]: # noqa: E501
|
def attach_entity(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> Dict[str, str]: # noqa: E501
|
||||||
"""Attach Entity # noqa: E501
|
"""Attach Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -55,7 +55,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.attach_entity(entity_did, skip, limit, async_req=True)
|
>>> thread = api.attach_entity(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
@@ -79,7 +79,7 @@ class EntitiesApi:
|
|||||||
return self.attach_entity_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
return self.attach_entity_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def attach_entity_with_http_info(self, entity_did : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
def attach_entity_with_http_info(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Attach Entity # noqa: E501
|
"""Attach Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -88,7 +88,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.attach_entity_with_http_info(entity_did, skip, limit, async_req=True)
|
>>> thread = api.attach_entity_with_http_info(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
@@ -152,12 +152,12 @@ class EntitiesApi:
|
|||||||
|
|
||||||
# process the path parameters
|
# process the path parameters
|
||||||
_path_params = {}
|
_path_params = {}
|
||||||
if _params['entity_did']:
|
|
||||||
_path_params['entity_did'] = _params['entity_did']
|
|
||||||
|
|
||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
if _params.get('skip') is not None: # noqa: E501
|
if _params.get('skip') is not None: # noqa: E501
|
||||||
_query_params.append(('skip', _params['skip']))
|
_query_params.append(('skip', _params['skip']))
|
||||||
|
|
||||||
@@ -184,7 +184,7 @@ class EntitiesApi:
|
|||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/{entity_did}/attach', 'POST',
|
'/api/v1/attach', 'POST',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
@@ -347,7 +347,7 @@ class EntitiesApi:
|
|||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def delete_entity(self, entity_did : StrictStr, **kwargs) -> Dict[str, str]: # noqa: E501
|
def delete_entity(self, entity_did : Optional[StrictStr] = None, **kwargs) -> Dict[str, str]: # noqa: E501
|
||||||
"""Delete Entity # noqa: E501
|
"""Delete Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -356,7 +356,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.delete_entity(entity_did, async_req=True)
|
>>> thread = api.delete_entity(entity_did, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param async_req: Whether to execute the request asynchronously.
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
:type async_req: bool, optional
|
:type async_req: bool, optional
|
||||||
@@ -376,7 +376,7 @@ class EntitiesApi:
|
|||||||
return self.delete_entity_with_http_info(entity_did, **kwargs) # noqa: E501
|
return self.delete_entity_with_http_info(entity_did, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def delete_entity_with_http_info(self, entity_did : StrictStr, **kwargs) -> ApiResponse: # noqa: E501
|
def delete_entity_with_http_info(self, entity_did : Optional[StrictStr] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Delete Entity # noqa: E501
|
"""Delete Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -385,7 +385,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.delete_entity_with_http_info(entity_did, async_req=True)
|
>>> thread = api.delete_entity_with_http_info(entity_did, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param async_req: Whether to execute the request asynchronously.
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
:type async_req: bool, optional
|
:type async_req: bool, optional
|
||||||
@@ -443,12 +443,12 @@ class EntitiesApi:
|
|||||||
|
|
||||||
# process the path parameters
|
# process the path parameters
|
||||||
_path_params = {}
|
_path_params = {}
|
||||||
if _params['entity_did']:
|
|
||||||
_path_params['entity_did'] = _params['entity_did']
|
|
||||||
|
|
||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
# process the header parameters
|
# process the header parameters
|
||||||
_header_params = dict(_params.get('_headers', {}))
|
_header_params = dict(_params.get('_headers', {}))
|
||||||
# process the form parameters
|
# process the form parameters
|
||||||
@@ -469,7 +469,7 @@ class EntitiesApi:
|
|||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/{entity_did}/entity', 'DELETE',
|
'/api/v1/entity', 'DELETE',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
@@ -486,7 +486,7 @@ class EntitiesApi:
|
|||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def detach_entity(self, entity_did : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> Entity: # noqa: E501
|
def detach_entity(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> Dict[str, str]: # noqa: E501
|
||||||
"""Detach Entity # noqa: E501
|
"""Detach Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -495,7 +495,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.detach_entity(entity_did, skip, limit, async_req=True)
|
>>> thread = api.detach_entity(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
@@ -510,7 +510,7 @@ class EntitiesApi:
|
|||||||
:return: Returns the result object.
|
:return: Returns the result object.
|
||||||
If the method is called asynchronously,
|
If the method is called asynchronously,
|
||||||
returns the request thread.
|
returns the request thread.
|
||||||
:rtype: Entity
|
:rtype: Dict[str, str]
|
||||||
"""
|
"""
|
||||||
kwargs['_return_http_data_only'] = True
|
kwargs['_return_http_data_only'] = True
|
||||||
if '_preload_content' in kwargs:
|
if '_preload_content' in kwargs:
|
||||||
@@ -519,7 +519,7 @@ class EntitiesApi:
|
|||||||
return self.detach_entity_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
return self.detach_entity_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def detach_entity_with_http_info(self, entity_did : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
def detach_entity_with_http_info(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Detach Entity # noqa: E501
|
"""Detach Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -528,7 +528,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.detach_entity_with_http_info(entity_did, skip, limit, async_req=True)
|
>>> thread = api.detach_entity_with_http_info(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
@@ -556,7 +556,7 @@ class EntitiesApi:
|
|||||||
:return: Returns the result object.
|
:return: Returns the result object.
|
||||||
If the method is called asynchronously,
|
If the method is called asynchronously,
|
||||||
returns the request thread.
|
returns the request thread.
|
||||||
:rtype: tuple(Entity, status_code(int), headers(HTTPHeaderDict))
|
:rtype: tuple(Dict[str, str], status_code(int), headers(HTTPHeaderDict))
|
||||||
"""
|
"""
|
||||||
|
|
||||||
_params = locals()
|
_params = locals()
|
||||||
@@ -592,12 +592,12 @@ class EntitiesApi:
|
|||||||
|
|
||||||
# process the path parameters
|
# process the path parameters
|
||||||
_path_params = {}
|
_path_params = {}
|
||||||
if _params['entity_did']:
|
|
||||||
_path_params['entity_did'] = _params['entity_did']
|
|
||||||
|
|
||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
if _params.get('skip') is not None: # noqa: E501
|
if _params.get('skip') is not None: # noqa: E501
|
||||||
_query_params.append(('skip', _params['skip']))
|
_query_params.append(('skip', _params['skip']))
|
||||||
|
|
||||||
@@ -619,12 +619,12 @@ class EntitiesApi:
|
|||||||
_auth_settings = [] # noqa: E501
|
_auth_settings = [] # noqa: E501
|
||||||
|
|
||||||
_response_types_map = {
|
_response_types_map = {
|
||||||
'200': "Entity",
|
'200': "Dict[str, str]",
|
||||||
'422': "HTTPValidationError",
|
'422': "HTTPValidationError",
|
||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/{entity_did}/detach', 'POST',
|
'/api/v1/detach', 'POST',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
@@ -935,7 +935,7 @@ class EntitiesApi:
|
|||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def get_entity_by_did(self, entity_did : StrictStr, **kwargs) -> Entity: # noqa: E501
|
def get_entity_by_did(self, entity_did : Optional[StrictStr] = None, **kwargs) -> Entity: # noqa: E501
|
||||||
"""Get Entity By Did # noqa: E501
|
"""Get Entity By Did # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -944,7 +944,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.get_entity_by_did(entity_did, async_req=True)
|
>>> thread = api.get_entity_by_did(entity_did, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param async_req: Whether to execute the request asynchronously.
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
:type async_req: bool, optional
|
:type async_req: bool, optional
|
||||||
@@ -964,7 +964,7 @@ class EntitiesApi:
|
|||||||
return self.get_entity_by_did_with_http_info(entity_did, **kwargs) # noqa: E501
|
return self.get_entity_by_did_with_http_info(entity_did, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def get_entity_by_did_with_http_info(self, entity_did : StrictStr, **kwargs) -> ApiResponse: # noqa: E501
|
def get_entity_by_did_with_http_info(self, entity_did : Optional[StrictStr] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Get Entity By Did # noqa: E501
|
"""Get Entity By Did # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -973,7 +973,7 @@ class EntitiesApi:
|
|||||||
>>> thread = api.get_entity_by_did_with_http_info(entity_did, async_req=True)
|
>>> thread = api.get_entity_by_did_with_http_info(entity_did, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param async_req: Whether to execute the request asynchronously.
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
:type async_req: bool, optional
|
:type async_req: bool, optional
|
||||||
@@ -1031,12 +1031,12 @@ class EntitiesApi:
|
|||||||
|
|
||||||
# process the path parameters
|
# process the path parameters
|
||||||
_path_params = {}
|
_path_params = {}
|
||||||
if _params['entity_did']:
|
|
||||||
_path_params['entity_did'] = _params['entity_did']
|
|
||||||
|
|
||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
# process the header parameters
|
# process the header parameters
|
||||||
_header_params = dict(_params.get('_headers', {}))
|
_header_params = dict(_params.get('_headers', {}))
|
||||||
# process the form parameters
|
# process the form parameters
|
||||||
@@ -1057,7 +1057,7 @@ class EntitiesApi:
|
|||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/{entity_did}/entity', 'GET',
|
'/api/v1/entity', 'GET',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
@@ -1211,3 +1211,142 @@ class EntitiesApi:
|
|||||||
_request_timeout=_params.get('_request_timeout'),
|
_request_timeout=_params.get('_request_timeout'),
|
||||||
collection_formats=_collection_formats,
|
collection_formats=_collection_formats,
|
||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
|
@validate_arguments
|
||||||
|
def is_attached(self, entity_did : Optional[StrictStr] = None, **kwargs) -> Dict[str, str]: # noqa: E501
|
||||||
|
"""Is Attached # noqa: E501
|
||||||
|
|
||||||
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
|
asynchronous HTTP request, please pass async_req=True
|
||||||
|
|
||||||
|
>>> thread = api.is_attached(entity_did, async_req=True)
|
||||||
|
>>> result = thread.get()
|
||||||
|
|
||||||
|
:param entity_did:
|
||||||
|
:type entity_did: str
|
||||||
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
|
:type async_req: bool, optional
|
||||||
|
:param _request_timeout: timeout setting for this request.
|
||||||
|
If one number provided, it will be total request
|
||||||
|
timeout. It can also be a pair (tuple) of
|
||||||
|
(connection, read) timeouts.
|
||||||
|
:return: Returns the result object.
|
||||||
|
If the method is called asynchronously,
|
||||||
|
returns the request thread.
|
||||||
|
:rtype: Dict[str, str]
|
||||||
|
"""
|
||||||
|
kwargs['_return_http_data_only'] = True
|
||||||
|
if '_preload_content' in kwargs:
|
||||||
|
message = "Error! Please call the is_attached_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
||||||
|
raise ValueError(message)
|
||||||
|
return self.is_attached_with_http_info(entity_did, **kwargs) # noqa: E501
|
||||||
|
|
||||||
|
@validate_arguments
|
||||||
|
def is_attached_with_http_info(self, entity_did : Optional[StrictStr] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
|
"""Is Attached # noqa: E501
|
||||||
|
|
||||||
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
|
asynchronous HTTP request, please pass async_req=True
|
||||||
|
|
||||||
|
>>> thread = api.is_attached_with_http_info(entity_did, async_req=True)
|
||||||
|
>>> result = thread.get()
|
||||||
|
|
||||||
|
:param entity_did:
|
||||||
|
:type entity_did: str
|
||||||
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
|
:type async_req: bool, optional
|
||||||
|
:param _preload_content: if False, the ApiResponse.data will
|
||||||
|
be set to none and raw_data will store the
|
||||||
|
HTTP response body without reading/decoding.
|
||||||
|
Default is True.
|
||||||
|
:type _preload_content: bool, optional
|
||||||
|
:param _return_http_data_only: response data instead of ApiResponse
|
||||||
|
object with status code, headers, etc
|
||||||
|
:type _return_http_data_only: bool, optional
|
||||||
|
:param _request_timeout: timeout setting for this request. If one
|
||||||
|
number provided, it will be total request
|
||||||
|
timeout. It can also be a pair (tuple) of
|
||||||
|
(connection, read) timeouts.
|
||||||
|
:param _request_auth: set to override the auth_settings for an a single
|
||||||
|
request; this effectively ignores the authentication
|
||||||
|
in the spec for a single request.
|
||||||
|
:type _request_auth: dict, optional
|
||||||
|
:type _content_type: string, optional: force content-type for the request
|
||||||
|
:return: Returns the result object.
|
||||||
|
If the method is called asynchronously,
|
||||||
|
returns the request thread.
|
||||||
|
:rtype: tuple(Dict[str, str], status_code(int), headers(HTTPHeaderDict))
|
||||||
|
"""
|
||||||
|
|
||||||
|
_params = locals()
|
||||||
|
|
||||||
|
_all_params = [
|
||||||
|
'entity_did'
|
||||||
|
]
|
||||||
|
_all_params.extend(
|
||||||
|
[
|
||||||
|
'async_req',
|
||||||
|
'_return_http_data_only',
|
||||||
|
'_preload_content',
|
||||||
|
'_request_timeout',
|
||||||
|
'_request_auth',
|
||||||
|
'_content_type',
|
||||||
|
'_headers'
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
# validate the arguments
|
||||||
|
for _key, _val in _params['kwargs'].items():
|
||||||
|
if _key not in _all_params:
|
||||||
|
raise ApiTypeError(
|
||||||
|
"Got an unexpected keyword argument '%s'"
|
||||||
|
" to method is_attached" % _key
|
||||||
|
)
|
||||||
|
_params[_key] = _val
|
||||||
|
del _params['kwargs']
|
||||||
|
|
||||||
|
_collection_formats = {}
|
||||||
|
|
||||||
|
# process the path parameters
|
||||||
|
_path_params = {}
|
||||||
|
|
||||||
|
# process the query parameters
|
||||||
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
|
# process the header parameters
|
||||||
|
_header_params = dict(_params.get('_headers', {}))
|
||||||
|
# process the form parameters
|
||||||
|
_form_params = []
|
||||||
|
_files = {}
|
||||||
|
# process the body parameter
|
||||||
|
_body_params = None
|
||||||
|
# set the HTTP header `Accept`
|
||||||
|
_header_params['Accept'] = self.api_client.select_header_accept(
|
||||||
|
['application/json']) # noqa: E501
|
||||||
|
|
||||||
|
# authentication setting
|
||||||
|
_auth_settings = [] # noqa: E501
|
||||||
|
|
||||||
|
_response_types_map = {
|
||||||
|
'200': "Dict[str, str]",
|
||||||
|
'422': "HTTPValidationError",
|
||||||
|
}
|
||||||
|
|
||||||
|
return self.api_client.call_api(
|
||||||
|
'/api/v1/is_attached', 'GET',
|
||||||
|
_path_params,
|
||||||
|
_query_params,
|
||||||
|
_header_params,
|
||||||
|
body=_body_params,
|
||||||
|
post_params=_form_params,
|
||||||
|
files=_files,
|
||||||
|
response_types_map=_response_types_map,
|
||||||
|
auth_settings=_auth_settings,
|
||||||
|
async_req=_params.get('async_req'),
|
||||||
|
_return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
|
||||||
|
_preload_content=_params.get('_preload_content', True),
|
||||||
|
_request_timeout=_params.get('_request_timeout'),
|
||||||
|
collection_formats=_collection_formats,
|
||||||
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|||||||
@@ -24,7 +24,6 @@ from typing import Any, List, Optional, Dict
|
|||||||
|
|
||||||
from openapi_client.models.service import Service
|
from openapi_client.models.service import Service
|
||||||
from openapi_client.models.service_create import ServiceCreate
|
from openapi_client.models.service_create import ServiceCreate
|
||||||
from openapi_client.models.services_by_name import ServicesByName
|
|
||||||
|
|
||||||
from openapi_client.api_client import ApiClient
|
from openapi_client.api_client import ApiClient
|
||||||
from openapi_client.api_response import ApiResponse
|
from openapi_client.api_response import ApiResponse
|
||||||
@@ -193,7 +192,7 @@ class ServicesApi:
|
|||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def delete_service(self, entity_did : StrictStr, **kwargs) -> Dict[str, str]: # noqa: E501
|
def delete_service(self, entity_did : Optional[StrictStr] = None, **kwargs) -> Dict[str, str]: # noqa: E501
|
||||||
"""Delete Service # noqa: E501
|
"""Delete Service # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -202,7 +201,7 @@ class ServicesApi:
|
|||||||
>>> thread = api.delete_service(entity_did, async_req=True)
|
>>> thread = api.delete_service(entity_did, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param async_req: Whether to execute the request asynchronously.
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
:type async_req: bool, optional
|
:type async_req: bool, optional
|
||||||
@@ -222,7 +221,7 @@ class ServicesApi:
|
|||||||
return self.delete_service_with_http_info(entity_did, **kwargs) # noqa: E501
|
return self.delete_service_with_http_info(entity_did, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def delete_service_with_http_info(self, entity_did : StrictStr, **kwargs) -> ApiResponse: # noqa: E501
|
def delete_service_with_http_info(self, entity_did : Optional[StrictStr] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Delete Service # noqa: E501
|
"""Delete Service # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -231,7 +230,7 @@ class ServicesApi:
|
|||||||
>>> thread = api.delete_service_with_http_info(entity_did, async_req=True)
|
>>> thread = api.delete_service_with_http_info(entity_did, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param async_req: Whether to execute the request asynchronously.
|
:param async_req: Whether to execute the request asynchronously.
|
||||||
:type async_req: bool, optional
|
:type async_req: bool, optional
|
||||||
@@ -289,12 +288,12 @@ class ServicesApi:
|
|||||||
|
|
||||||
# process the path parameters
|
# process the path parameters
|
||||||
_path_params = {}
|
_path_params = {}
|
||||||
if _params['entity_did']:
|
|
||||||
_path_params['entity_did'] = _params['entity_did']
|
|
||||||
|
|
||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
# process the header parameters
|
# process the header parameters
|
||||||
_header_params = dict(_params.get('_headers', {}))
|
_header_params = dict(_params.get('_headers', {}))
|
||||||
# process the form parameters
|
# process the form parameters
|
||||||
@@ -315,7 +314,7 @@ class ServicesApi:
|
|||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/{entity_did}/service', 'DELETE',
|
'/api/v1/service', 'DELETE',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
@@ -479,7 +478,7 @@ class ServicesApi:
|
|||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def get_service_by_did(self, entity_did : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> List[Service]: # noqa: E501
|
def get_service_by_did(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> List[Service]: # noqa: E501
|
||||||
"""Get Service By Did # noqa: E501
|
"""Get Service By Did # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -488,7 +487,7 @@ class ServicesApi:
|
|||||||
>>> thread = api.get_service_by_did(entity_did, skip, limit, async_req=True)
|
>>> thread = api.get_service_by_did(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
@@ -512,7 +511,7 @@ class ServicesApi:
|
|||||||
return self.get_service_by_did_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
return self.get_service_by_did_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def get_service_by_did_with_http_info(self, entity_did : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
def get_service_by_did_with_http_info(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Get Service By Did # noqa: E501
|
"""Get Service By Did # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
@@ -521,7 +520,7 @@ class ServicesApi:
|
|||||||
>>> thread = api.get_service_by_did_with_http_info(entity_did, skip, limit, async_req=True)
|
>>> thread = api.get_service_by_did_with_http_info(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_did: (required)
|
:param entity_did:
|
||||||
:type entity_did: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
@@ -585,12 +584,12 @@ class ServicesApi:
|
|||||||
|
|
||||||
# process the path parameters
|
# process the path parameters
|
||||||
_path_params = {}
|
_path_params = {}
|
||||||
if _params['entity_did']:
|
|
||||||
_path_params['entity_did'] = _params['entity_did']
|
|
||||||
|
|
||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
if _params.get('skip') is not None: # noqa: E501
|
if _params.get('skip') is not None: # noqa: E501
|
||||||
_query_params.append(('skip', _params['skip']))
|
_query_params.append(('skip', _params['skip']))
|
||||||
|
|
||||||
@@ -617,7 +616,7 @@ class ServicesApi:
|
|||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/{entity_did}/service', 'GET',
|
'/api/v1/service', 'GET',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
@@ -634,17 +633,17 @@ class ServicesApi:
|
|||||||
_request_auth=_params.get('_request_auth'))
|
_request_auth=_params.get('_request_auth'))
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def get_services_by_name(self, entity_name : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ServicesByName: # noqa: E501
|
def get_services_without_entity(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> List[Service]: # noqa: E501
|
||||||
"""Get Services By Name # noqa: E501
|
"""Get Services Without Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
asynchronous HTTP request, please pass async_req=True
|
asynchronous HTTP request, please pass async_req=True
|
||||||
|
|
||||||
>>> thread = api.get_services_by_name(entity_name, skip, limit, async_req=True)
|
>>> thread = api.get_services_without_entity(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_name: (required)
|
:param entity_did:
|
||||||
:type entity_name: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
:param limit:
|
:param limit:
|
||||||
@@ -658,26 +657,26 @@ class ServicesApi:
|
|||||||
:return: Returns the result object.
|
:return: Returns the result object.
|
||||||
If the method is called asynchronously,
|
If the method is called asynchronously,
|
||||||
returns the request thread.
|
returns the request thread.
|
||||||
:rtype: ServicesByName
|
:rtype: List[Service]
|
||||||
"""
|
"""
|
||||||
kwargs['_return_http_data_only'] = True
|
kwargs['_return_http_data_only'] = True
|
||||||
if '_preload_content' in kwargs:
|
if '_preload_content' in kwargs:
|
||||||
message = "Error! Please call the get_services_by_name_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
message = "Error! Please call the get_services_without_entity_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
||||||
raise ValueError(message)
|
raise ValueError(message)
|
||||||
return self.get_services_by_name_with_http_info(entity_name, skip, limit, **kwargs) # noqa: E501
|
return self.get_services_without_entity_with_http_info(entity_did, skip, limit, **kwargs) # noqa: E501
|
||||||
|
|
||||||
@validate_arguments
|
@validate_arguments
|
||||||
def get_services_by_name_with_http_info(self, entity_name : StrictStr, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
def get_services_without_entity_with_http_info(self, entity_did : Optional[StrictStr] = None, skip : Optional[StrictInt] = None, limit : Optional[StrictInt] = None, **kwargs) -> ApiResponse: # noqa: E501
|
||||||
"""Get Services By Name # noqa: E501
|
"""Get Services Without Entity # noqa: E501
|
||||||
|
|
||||||
This method makes a synchronous HTTP request by default. To make an
|
This method makes a synchronous HTTP request by default. To make an
|
||||||
asynchronous HTTP request, please pass async_req=True
|
asynchronous HTTP request, please pass async_req=True
|
||||||
|
|
||||||
>>> thread = api.get_services_by_name_with_http_info(entity_name, skip, limit, async_req=True)
|
>>> thread = api.get_services_without_entity_with_http_info(entity_did, skip, limit, async_req=True)
|
||||||
>>> result = thread.get()
|
>>> result = thread.get()
|
||||||
|
|
||||||
:param entity_name: (required)
|
:param entity_did:
|
||||||
:type entity_name: str
|
:type entity_did: str
|
||||||
:param skip:
|
:param skip:
|
||||||
:type skip: int
|
:type skip: int
|
||||||
:param limit:
|
:param limit:
|
||||||
@@ -704,13 +703,13 @@ class ServicesApi:
|
|||||||
:return: Returns the result object.
|
:return: Returns the result object.
|
||||||
If the method is called asynchronously,
|
If the method is called asynchronously,
|
||||||
returns the request thread.
|
returns the request thread.
|
||||||
:rtype: tuple(ServicesByName, status_code(int), headers(HTTPHeaderDict))
|
:rtype: tuple(List[Service], status_code(int), headers(HTTPHeaderDict))
|
||||||
"""
|
"""
|
||||||
|
|
||||||
_params = locals()
|
_params = locals()
|
||||||
|
|
||||||
_all_params = [
|
_all_params = [
|
||||||
'entity_name',
|
'entity_did',
|
||||||
'skip',
|
'skip',
|
||||||
'limit'
|
'limit'
|
||||||
]
|
]
|
||||||
@@ -731,7 +730,7 @@ class ServicesApi:
|
|||||||
if _key not in _all_params:
|
if _key not in _all_params:
|
||||||
raise ApiTypeError(
|
raise ApiTypeError(
|
||||||
"Got an unexpected keyword argument '%s'"
|
"Got an unexpected keyword argument '%s'"
|
||||||
" to method get_services_by_name" % _key
|
" to method get_services_without_entity" % _key
|
||||||
)
|
)
|
||||||
_params[_key] = _val
|
_params[_key] = _val
|
||||||
del _params['kwargs']
|
del _params['kwargs']
|
||||||
@@ -743,8 +742,8 @@ class ServicesApi:
|
|||||||
|
|
||||||
# process the query parameters
|
# process the query parameters
|
||||||
_query_params = []
|
_query_params = []
|
||||||
if _params.get('entity_name') is not None: # noqa: E501
|
if _params.get('entity_did') is not None: # noqa: E501
|
||||||
_query_params.append(('entity_name', _params['entity_name']))
|
_query_params.append(('entity_did', _params['entity_did']))
|
||||||
|
|
||||||
if _params.get('skip') is not None: # noqa: E501
|
if _params.get('skip') is not None: # noqa: E501
|
||||||
_query_params.append(('skip', _params['skip']))
|
_query_params.append(('skip', _params['skip']))
|
||||||
@@ -767,12 +766,12 @@ class ServicesApi:
|
|||||||
_auth_settings = [] # noqa: E501
|
_auth_settings = [] # noqa: E501
|
||||||
|
|
||||||
_response_types_map = {
|
_response_types_map = {
|
||||||
'200': "ServicesByName",
|
'200': "List[Service]",
|
||||||
'422': "HTTPValidationError",
|
'422': "HTTPValidationError",
|
||||||
}
|
}
|
||||||
|
|
||||||
return self.api_client.call_api(
|
return self.api_client.call_api(
|
||||||
'/api/v1/services_by_entity_name', 'GET',
|
'/api/v1/services_without_entity', 'GET',
|
||||||
_path_params,
|
_path_params,
|
||||||
_query_params,
|
_query_params,
|
||||||
_header_params,
|
_header_params,
|
||||||
|
|||||||
@@ -2,20 +2,21 @@
|
|||||||
|
|
||||||
All URIs are relative to _http://localhost_
|
All URIs are relative to _http://localhost_
|
||||||
|
|
||||||
| Method | HTTP request | Description |
|
| Method | HTTP request | Description |
|
||||||
| ----------------------------------------------------------------- | -------------------------------------- | --------------------- |
|
| ----------------------------------------------------------------- | --------------------------------- | --------------------- |
|
||||||
| [**attach_entity**](EntitiesApi.md#attach_entity) | **POST** /api/v1/{entity_did}/attach | Attach Entity |
|
| [**attach_entity**](EntitiesApi.md#attach_entity) | **POST** /api/v1/attach | Attach Entity |
|
||||||
| [**create_entity**](EntitiesApi.md#create_entity) | **POST** /api/v1/entity | Create Entity |
|
| [**create_entity**](EntitiesApi.md#create_entity) | **POST** /api/v1/entity | Create Entity |
|
||||||
| [**delete_entity**](EntitiesApi.md#delete_entity) | **DELETE** /api/v1/{entity_did}/entity | Delete Entity |
|
| [**delete_entity**](EntitiesApi.md#delete_entity) | **DELETE** /api/v1/entity | Delete Entity |
|
||||||
| [**detach_entity**](EntitiesApi.md#detach_entity) | **POST** /api/v1/{entity_did}/detach | Detach Entity |
|
| [**detach_entity**](EntitiesApi.md#detach_entity) | **POST** /api/v1/detach | Detach Entity |
|
||||||
| [**get_all_entities**](EntitiesApi.md#get_all_entities) | **GET** /api/v1/entities | Get All Entities |
|
| [**get_all_entities**](EntitiesApi.md#get_all_entities) | **GET** /api/v1/entities | Get All Entities |
|
||||||
| [**get_attached_entities**](EntitiesApi.md#get_attached_entities) | **GET** /api/v1/attached_entities | Get Attached Entities |
|
| [**get_attached_entities**](EntitiesApi.md#get_attached_entities) | **GET** /api/v1/attached_entities | Get Attached Entities |
|
||||||
| [**get_entity_by_did**](EntitiesApi.md#get_entity_by_did) | **GET** /api/v1/{entity_did}/entity | Get Entity By Did |
|
| [**get_entity_by_did**](EntitiesApi.md#get_entity_by_did) | **GET** /api/v1/entity | Get Entity By Did |
|
||||||
| [**get_entity_by_name**](EntitiesApi.md#get_entity_by_name) | **GET** /api/v1/entity_by_name | Get Entity By Name |
|
| [**get_entity_by_name**](EntitiesApi.md#get_entity_by_name) | **GET** /api/v1/entity_by_name | Get Entity By Name |
|
||||||
|
| [**is_attached**](EntitiesApi.md#is_attached) | **GET** /api/v1/is_attached | Is Attached |
|
||||||
|
|
||||||
# **attach_entity**
|
# **attach_entity**
|
||||||
|
|
||||||
> Dict[str, str] attach_entity(entity_did, skip=skip, limit=limit)
|
> Dict[str, str] attach_entity(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
|
|
||||||
Attach Entity
|
Attach Entity
|
||||||
|
|
||||||
@@ -39,13 +40,13 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.EntitiesApi(api_client)
|
api_instance = openapi_client.EntitiesApi(api_client)
|
||||||
entity_did = 'entity_did_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
skip = 0 # int | (optional) (default to 0)
|
skip = 0 # int | (optional) (default to 0)
|
||||||
limit = 100 # int | (optional) (default to 100)
|
limit = 100 # int | (optional) (default to 100)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Attach Entity
|
# Attach Entity
|
||||||
api_response = api_instance.attach_entity(entity_did, skip=skip, limit=limit)
|
api_response = api_instance.attach_entity(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
print("The response of EntitiesApi->attach_entity:\n")
|
print("The response of EntitiesApi->attach_entity:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -54,11 +55,11 @@ with openapi_client.ApiClient(configuration) as api_client:
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| -------------- | ------- | ----------- | --------------------------- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_did** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
| **skip** | **int** | | [optional] [default to 0] |
|
| **skip** | **int** | | [optional] [default to 0] |
|
||||||
| **limit** | **int** | | [optional] [default to 100] |
|
| **limit** | **int** | | [optional] [default to 100] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
@@ -151,7 +152,7 @@ No authorization required
|
|||||||
|
|
||||||
# **delete_entity**
|
# **delete_entity**
|
||||||
|
|
||||||
> Dict[str, str] delete_entity(entity_did)
|
> Dict[str, str] delete_entity(entity_did=entity_did)
|
||||||
|
|
||||||
Delete Entity
|
Delete Entity
|
||||||
|
|
||||||
@@ -175,11 +176,11 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.EntitiesApi(api_client)
|
api_instance = openapi_client.EntitiesApi(api_client)
|
||||||
entity_did = 'entity_did_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Delete Entity
|
# Delete Entity
|
||||||
api_response = api_instance.delete_entity(entity_did)
|
api_response = api_instance.delete_entity(entity_did=entity_did)
|
||||||
print("The response of EntitiesApi->delete_entity:\n")
|
print("The response of EntitiesApi->delete_entity:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -188,9 +189,9 @@ with openapi_client.ApiClient(configuration) as api_client:
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| -------------- | ------- | ----------- | ----- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_did** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
@@ -216,7 +217,7 @@ No authorization required
|
|||||||
|
|
||||||
# **detach_entity**
|
# **detach_entity**
|
||||||
|
|
||||||
> Entity detach_entity(entity_did, skip=skip, limit=limit)
|
> Dict[str, str] detach_entity(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
|
|
||||||
Detach Entity
|
Detach Entity
|
||||||
|
|
||||||
@@ -226,7 +227,6 @@ Detach Entity
|
|||||||
import time
|
import time
|
||||||
import os
|
import os
|
||||||
import openapi_client
|
import openapi_client
|
||||||
from openapi_client.models.entity import Entity
|
|
||||||
from openapi_client.rest import ApiException
|
from openapi_client.rest import ApiException
|
||||||
from pprint import pprint
|
from pprint import pprint
|
||||||
|
|
||||||
@@ -241,13 +241,13 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.EntitiesApi(api_client)
|
api_instance = openapi_client.EntitiesApi(api_client)
|
||||||
entity_did = 'entity_did_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
skip = 0 # int | (optional) (default to 0)
|
skip = 0 # int | (optional) (default to 0)
|
||||||
limit = 100 # int | (optional) (default to 100)
|
limit = 100 # int | (optional) (default to 100)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Detach Entity
|
# Detach Entity
|
||||||
api_response = api_instance.detach_entity(entity_did, skip=skip, limit=limit)
|
api_response = api_instance.detach_entity(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
print("The response of EntitiesApi->detach_entity:\n")
|
print("The response of EntitiesApi->detach_entity:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -256,15 +256,15 @@ with openapi_client.ApiClient(configuration) as api_client:
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| -------------- | ------- | ----------- | --------------------------- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_did** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
| **skip** | **int** | | [optional] [default to 0] |
|
| **skip** | **int** | | [optional] [default to 0] |
|
||||||
| **limit** | **int** | | [optional] [default to 100] |
|
| **limit** | **int** | | [optional] [default to 100] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
[**Entity**](Entity.md)
|
**Dict[str, str]**
|
||||||
|
|
||||||
### Authorization
|
### Authorization
|
||||||
|
|
||||||
@@ -422,7 +422,7 @@ No authorization required
|
|||||||
|
|
||||||
# **get_entity_by_did**
|
# **get_entity_by_did**
|
||||||
|
|
||||||
> Entity get_entity_by_did(entity_did)
|
> Entity get_entity_by_did(entity_did=entity_did)
|
||||||
|
|
||||||
Get Entity By Did
|
Get Entity By Did
|
||||||
|
|
||||||
@@ -447,11 +447,11 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.EntitiesApi(api_client)
|
api_instance = openapi_client.EntitiesApi(api_client)
|
||||||
entity_did = 'entity_did_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Get Entity By Did
|
# Get Entity By Did
|
||||||
api_response = api_instance.get_entity_by_did(entity_did)
|
api_response = api_instance.get_entity_by_did(entity_did=entity_did)
|
||||||
print("The response of EntitiesApi->get_entity_by_did:\n")
|
print("The response of EntitiesApi->get_entity_by_did:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -460,9 +460,9 @@ with openapi_client.ApiClient(configuration) as api_client:
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| -------------- | ------- | ----------- | ----- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_did** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
@@ -551,3 +551,68 @@ No authorization required
|
|||||||
| **422** | Validation Error | - |
|
| **422** | Validation Error | - |
|
||||||
|
|
||||||
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||||
|
|
||||||
|
# **is_attached**
|
||||||
|
|
||||||
|
> Dict[str, str] is_attached(entity_did=entity_did)
|
||||||
|
|
||||||
|
Is Attached
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```python
|
||||||
|
import time
|
||||||
|
import os
|
||||||
|
import openapi_client
|
||||||
|
from openapi_client.rest import ApiException
|
||||||
|
from pprint import pprint
|
||||||
|
|
||||||
|
# Defining the host is optional and defaults to http://localhost
|
||||||
|
# See configuration.py for a list of all supported configuration parameters.
|
||||||
|
configuration = openapi_client.Configuration(
|
||||||
|
host = "http://localhost"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
# Enter a context with an instance of the API client
|
||||||
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
|
# Create an instance of the API class
|
||||||
|
api_instance = openapi_client.EntitiesApi(api_client)
|
||||||
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
|
|
||||||
|
try:
|
||||||
|
# Is Attached
|
||||||
|
api_response = api_instance.is_attached(entity_did=entity_did)
|
||||||
|
print("The response of EntitiesApi->is_attached:\n")
|
||||||
|
pprint(api_response)
|
||||||
|
except Exception as e:
|
||||||
|
print("Exception when calling EntitiesApi->is_attached: %s\n" % e)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Parameters
|
||||||
|
|
||||||
|
| Name | Type | Description | Notes |
|
||||||
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
|
|
||||||
|
### Return type
|
||||||
|
|
||||||
|
**Dict[str, str]**
|
||||||
|
|
||||||
|
### Authorization
|
||||||
|
|
||||||
|
No authorization required
|
||||||
|
|
||||||
|
### HTTP request headers
|
||||||
|
|
||||||
|
- **Content-Type**: Not defined
|
||||||
|
- **Accept**: application/json
|
||||||
|
|
||||||
|
### HTTP response details
|
||||||
|
|
||||||
|
| Status code | Description | Response headers |
|
||||||
|
| ----------- | ------------------- | ---------------- |
|
||||||
|
| **200** | Successful Response | - |
|
||||||
|
| **422** | Validation Error | - |
|
||||||
|
|
||||||
|
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||||
|
|||||||
@@ -2,14 +2,15 @@
|
|||||||
|
|
||||||
## Properties
|
## Properties
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| ------------ | ---------- | ----------- | ----- |
|
| -------------------- | ---------- | ----------- | ----- |
|
||||||
| **did** | **str** | |
|
| **did** | **str** | |
|
||||||
| **name** | **str** | |
|
| **name** | **str** | |
|
||||||
| **ip** | **str** | |
|
| **ip** | **str** | |
|
||||||
| **visible** | **bool** | |
|
| **visible** | **bool** | |
|
||||||
| **other** | **object** | |
|
| **other** | **object** | |
|
||||||
| **attached** | **bool** | |
|
| **attached** | **bool** | |
|
||||||
|
| **stop_health_task** | **bool** | |
|
||||||
|
|
||||||
## Example
|
## Example
|
||||||
|
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
All URIs are relative to _http://localhost_
|
All URIs are relative to _http://localhost_
|
||||||
|
|
||||||
| Method | HTTP request | Description |
|
| Method | HTTP request | Description |
|
||||||
| --------------------------------------------------------------- | --------------------------------------- | -------------------- |
|
| ----------------------------------------------------------------------------- | --------------------------------------- | --------------------------- |
|
||||||
| [**create_service**](ServicesApi.md#create_service) | **POST** /api/v1/service | Create Service |
|
| [**create_service**](ServicesApi.md#create_service) | **POST** /api/v1/service | Create Service |
|
||||||
| [**delete_service**](ServicesApi.md#delete_service) | **DELETE** /api/v1/{entity_did}/service | Delete Service |
|
| [**delete_service**](ServicesApi.md#delete_service) | **DELETE** /api/v1/service | Delete Service |
|
||||||
| [**get_all_services**](ServicesApi.md#get_all_services) | **GET** /api/v1/services | Get All Services |
|
| [**get_all_services**](ServicesApi.md#get_all_services) | **GET** /api/v1/services | Get All Services |
|
||||||
| [**get_service_by_did**](ServicesApi.md#get_service_by_did) | **GET** /api/v1/{entity_did}/service | Get Service By Did |
|
| [**get_service_by_did**](ServicesApi.md#get_service_by_did) | **GET** /api/v1/service | Get Service By Did |
|
||||||
| [**get_services_by_name**](ServicesApi.md#get_services_by_name) | **GET** /api/v1/services_by_entity_name | Get Services By Name |
|
| [**get_services_without_entity**](ServicesApi.md#get_services_without_entity) | **GET** /api/v1/services_without_entity | Get Services Without Entity |
|
||||||
|
|
||||||
# **create_service**
|
# **create_service**
|
||||||
|
|
||||||
@@ -79,7 +79,7 @@ No authorization required
|
|||||||
|
|
||||||
# **delete_service**
|
# **delete_service**
|
||||||
|
|
||||||
> Dict[str, str] delete_service(entity_did)
|
> Dict[str, str] delete_service(entity_did=entity_did)
|
||||||
|
|
||||||
Delete Service
|
Delete Service
|
||||||
|
|
||||||
@@ -103,11 +103,11 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.ServicesApi(api_client)
|
api_instance = openapi_client.ServicesApi(api_client)
|
||||||
entity_did = 'entity_did_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Delete Service
|
# Delete Service
|
||||||
api_response = api_instance.delete_service(entity_did)
|
api_response = api_instance.delete_service(entity_did=entity_did)
|
||||||
print("The response of ServicesApi->delete_service:\n")
|
print("The response of ServicesApi->delete_service:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -116,9 +116,9 @@ with openapi_client.ApiClient(configuration) as api_client:
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| -------------- | ------- | ----------- | ----- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_did** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
@@ -212,7 +212,7 @@ No authorization required
|
|||||||
|
|
||||||
# **get_service_by_did**
|
# **get_service_by_did**
|
||||||
|
|
||||||
> List[Service] get_service_by_did(entity_did, skip=skip, limit=limit)
|
> List[Service] get_service_by_did(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
|
|
||||||
Get Service By Did
|
Get Service By Did
|
||||||
|
|
||||||
@@ -237,13 +237,13 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.ServicesApi(api_client)
|
api_instance = openapi_client.ServicesApi(api_client)
|
||||||
entity_did = 'entity_did_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
skip = 0 # int | (optional) (default to 0)
|
skip = 0 # int | (optional) (default to 0)
|
||||||
limit = 100 # int | (optional) (default to 100)
|
limit = 100 # int | (optional) (default to 100)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Get Service By Did
|
# Get Service By Did
|
||||||
api_response = api_instance.get_service_by_did(entity_did, skip=skip, limit=limit)
|
api_response = api_instance.get_service_by_did(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
print("The response of ServicesApi->get_service_by_did:\n")
|
print("The response of ServicesApi->get_service_by_did:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -252,11 +252,11 @@ with openapi_client.ApiClient(configuration) as api_client:
|
|||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| -------------- | ------- | ----------- | --------------------------- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_did** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
| **skip** | **int** | | [optional] [default to 0] |
|
| **skip** | **int** | | [optional] [default to 0] |
|
||||||
| **limit** | **int** | | [optional] [default to 100] |
|
| **limit** | **int** | | [optional] [default to 100] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
@@ -280,11 +280,11 @@ No authorization required
|
|||||||
|
|
||||||
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||||
|
|
||||||
# **get_services_by_name**
|
# **get_services_without_entity**
|
||||||
|
|
||||||
> ServicesByName get_services_by_name(entity_name, skip=skip, limit=limit)
|
> List[Service] get_services_without_entity(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
|
|
||||||
Get Services By Name
|
Get Services Without Entity
|
||||||
|
|
||||||
### Example
|
### Example
|
||||||
|
|
||||||
@@ -292,7 +292,7 @@ Get Services By Name
|
|||||||
import time
|
import time
|
||||||
import os
|
import os
|
||||||
import openapi_client
|
import openapi_client
|
||||||
from openapi_client.models.services_by_name import ServicesByName
|
from openapi_client.models.service import Service
|
||||||
from openapi_client.rest import ApiException
|
from openapi_client.rest import ApiException
|
||||||
from pprint import pprint
|
from pprint import pprint
|
||||||
|
|
||||||
@@ -307,30 +307,30 @@ configuration = openapi_client.Configuration(
|
|||||||
with openapi_client.ApiClient(configuration) as api_client:
|
with openapi_client.ApiClient(configuration) as api_client:
|
||||||
# Create an instance of the API class
|
# Create an instance of the API class
|
||||||
api_instance = openapi_client.ServicesApi(api_client)
|
api_instance = openapi_client.ServicesApi(api_client)
|
||||||
entity_name = 'entity_name_example' # str |
|
entity_did = 'did:sov:test:1234' # str | (optional) (default to 'did:sov:test:1234')
|
||||||
skip = 0 # int | (optional) (default to 0)
|
skip = 0 # int | (optional) (default to 0)
|
||||||
limit = 100 # int | (optional) (default to 100)
|
limit = 100 # int | (optional) (default to 100)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Get Services By Name
|
# Get Services Without Entity
|
||||||
api_response = api_instance.get_services_by_name(entity_name, skip=skip, limit=limit)
|
api_response = api_instance.get_services_without_entity(entity_did=entity_did, skip=skip, limit=limit)
|
||||||
print("The response of ServicesApi->get_services_by_name:\n")
|
print("The response of ServicesApi->get_services_without_entity:\n")
|
||||||
pprint(api_response)
|
pprint(api_response)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print("Exception when calling ServicesApi->get_services_by_name: %s\n" % e)
|
print("Exception when calling ServicesApi->get_services_without_entity: %s\n" % e)
|
||||||
```
|
```
|
||||||
|
|
||||||
### Parameters
|
### Parameters
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
| Name | Type | Description | Notes |
|
||||||
| --------------- | ------- | ----------- | --------------------------- |
|
| -------------- | ------- | ----------- | --------------------------------------------------- |
|
||||||
| **entity_name** | **str** | |
|
| **entity_did** | **str** | | [optional] [default to 'did:sov:test:1234'] |
|
||||||
| **skip** | **int** | | [optional] [default to 0] |
|
| **skip** | **int** | | [optional] [default to 0] |
|
||||||
| **limit** | **int** | | [optional] [default to 100] |
|
| **limit** | **int** | | [optional] [default to 100] |
|
||||||
|
|
||||||
### Return type
|
### Return type
|
||||||
|
|
||||||
[**ServicesByName**](ServicesByName.md)
|
[**List[Service]**](Service.md)
|
||||||
|
|
||||||
### Authorization
|
### Authorization
|
||||||
|
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
# ServicesByName
|
|
||||||
|
|
||||||
## Properties
|
|
||||||
|
|
||||||
| Name | Type | Description | Notes |
|
|
||||||
| ------------ | ------------------------------- | ----------- | ----- |
|
|
||||||
| **entity** | [**Entity**](Entity.md) | |
|
|
||||||
| **services** | [**List[Service]**](Service.md) | |
|
|
||||||
|
|
||||||
## Example
|
|
||||||
|
|
||||||
```python
|
|
||||||
from openapi_client.models.services_by_name import ServicesByName
|
|
||||||
|
|
||||||
# TODO update the JSON string below
|
|
||||||
json = "{}"
|
|
||||||
# create an instance of ServicesByName from a JSON string
|
|
||||||
services_by_name_instance = ServicesByName.from_json(json)
|
|
||||||
# print the JSON string representation of the object
|
|
||||||
print ServicesByName.to_json()
|
|
||||||
|
|
||||||
# convert the object into a dict
|
|
||||||
services_by_name_dict = services_by_name_instance.to_dict()
|
|
||||||
# create an instance of ServicesByName from a dict
|
|
||||||
services_by_name_form_dict = services_by_name.from_dict(services_by_name_dict)
|
|
||||||
```
|
|
||||||
|
|
||||||
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
|
||||||
@@ -21,7 +21,6 @@ from openapi_client.models.machine import Machine
|
|||||||
from openapi_client.models.resolution import Resolution
|
from openapi_client.models.resolution import Resolution
|
||||||
from openapi_client.models.service import Service
|
from openapi_client.models.service import Service
|
||||||
from openapi_client.models.service_create import ServiceCreate
|
from openapi_client.models.service_create import ServiceCreate
|
||||||
from openapi_client.models.services_by_name import ServicesByName
|
|
||||||
from openapi_client.models.status import Status
|
from openapi_client.models.status import Status
|
||||||
from openapi_client.models.validation_error import ValidationError
|
from openapi_client.models.validation_error import ValidationError
|
||||||
from openapi_client.models.validation_error_loc_inner import ValidationErrorLocInner
|
from openapi_client.models.validation_error_loc_inner import ValidationErrorLocInner
|
||||||
|
|||||||
@@ -31,7 +31,8 @@ class Entity(BaseModel):
|
|||||||
visible: StrictBool = Field(...)
|
visible: StrictBool = Field(...)
|
||||||
other: Dict[str, Any] = Field(...)
|
other: Dict[str, Any] = Field(...)
|
||||||
attached: StrictBool = Field(...)
|
attached: StrictBool = Field(...)
|
||||||
__properties = ["did", "name", "ip", "visible", "other", "attached"]
|
stop_health_task: StrictBool = Field(...)
|
||||||
|
__properties = ["did", "name", "ip", "visible", "other", "attached", "stop_health_task"]
|
||||||
|
|
||||||
class Config:
|
class Config:
|
||||||
"""Pydantic configuration"""
|
"""Pydantic configuration"""
|
||||||
@@ -74,7 +75,8 @@ class Entity(BaseModel):
|
|||||||
"ip": obj.get("ip"),
|
"ip": obj.get("ip"),
|
||||||
"visible": obj.get("visible"),
|
"visible": obj.get("visible"),
|
||||||
"other": obj.get("other"),
|
"other": obj.get("other"),
|
||||||
"attached": obj.get("attached")
|
"attached": obj.get("attached"),
|
||||||
|
"stop_health_task": obj.get("stop_health_task")
|
||||||
})
|
})
|
||||||
return _obj
|
return _obj
|
||||||
|
|
||||||
|
|||||||
@@ -1,85 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
from __future__ import annotations
|
|
||||||
import pprint
|
|
||||||
import re # noqa: F401
|
|
||||||
import json
|
|
||||||
|
|
||||||
|
|
||||||
from typing import List
|
|
||||||
from pydantic import BaseModel, Field, conlist
|
|
||||||
from openapi_client.models.entity import Entity
|
|
||||||
from openapi_client.models.service import Service
|
|
||||||
|
|
||||||
class ServicesByName(BaseModel):
|
|
||||||
"""
|
|
||||||
ServicesByName
|
|
||||||
"""
|
|
||||||
entity: Entity = Field(...)
|
|
||||||
services: conlist(Service) = Field(...)
|
|
||||||
__properties = ["entity", "services"]
|
|
||||||
|
|
||||||
class Config:
|
|
||||||
"""Pydantic configuration"""
|
|
||||||
allow_population_by_field_name = True
|
|
||||||
validate_assignment = True
|
|
||||||
|
|
||||||
def to_str(self) -> str:
|
|
||||||
"""Returns the string representation of the model using alias"""
|
|
||||||
return pprint.pformat(self.dict(by_alias=True))
|
|
||||||
|
|
||||||
def to_json(self) -> str:
|
|
||||||
"""Returns the JSON representation of the model using alias"""
|
|
||||||
return json.dumps(self.to_dict())
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def from_json(cls, json_str: str) -> ServicesByName:
|
|
||||||
"""Create an instance of ServicesByName from a JSON string"""
|
|
||||||
return cls.from_dict(json.loads(json_str))
|
|
||||||
|
|
||||||
def to_dict(self):
|
|
||||||
"""Returns the dictionary representation of the model using alias"""
|
|
||||||
_dict = self.dict(by_alias=True,
|
|
||||||
exclude={
|
|
||||||
},
|
|
||||||
exclude_none=True)
|
|
||||||
# override the default output from pydantic by calling `to_dict()` of entity
|
|
||||||
if self.entity:
|
|
||||||
_dict['entity'] = self.entity.to_dict()
|
|
||||||
# override the default output from pydantic by calling `to_dict()` of each item in services (list)
|
|
||||||
_items = []
|
|
||||||
if self.services:
|
|
||||||
for _item in self.services:
|
|
||||||
if _item:
|
|
||||||
_items.append(_item.to_dict())
|
|
||||||
_dict['services'] = _items
|
|
||||||
return _dict
|
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def from_dict(cls, obj: dict) -> ServicesByName:
|
|
||||||
"""Create an instance of ServicesByName from a dict"""
|
|
||||||
if obj is None:
|
|
||||||
return None
|
|
||||||
|
|
||||||
if not isinstance(obj, dict):
|
|
||||||
return ServicesByName.parse_obj(obj)
|
|
||||||
|
|
||||||
_obj = ServicesByName.parse_obj({
|
|
||||||
"entity": Entity.from_dict(obj.get("entity")) if obj.get("entity") is not None else None,
|
|
||||||
"services": [Service.from_dict(_item) for _item in obj.get("services")] if obj.get("services") is not None else None
|
|
||||||
})
|
|
||||||
return _obj
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from openapi_client.api.default_api import DefaultApi # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
class TestDefaultApi(unittest.TestCase):
|
|
||||||
"""DefaultApi unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self) -> None:
|
|
||||||
self.api = DefaultApi() # noqa: E501
|
|
||||||
|
|
||||||
def tearDown(self) -> None:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get(self) -> None:
|
|
||||||
"""Test case for get
|
|
||||||
|
|
||||||
Get # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_health(self) -> None:
|
|
||||||
"""Test case for health
|
|
||||||
|
|
||||||
Health # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_root(self) -> None:
|
|
||||||
"""Test case for root
|
|
||||||
|
|
||||||
Root # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from openapi_client.api.entities_api import EntitiesApi # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
class TestEntitiesApi(unittest.TestCase):
|
|
||||||
"""EntitiesApi unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self) -> None:
|
|
||||||
self.api = EntitiesApi() # noqa: E501
|
|
||||||
|
|
||||||
def tearDown(self) -> None:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_attach_entity(self) -> None:
|
|
||||||
"""Test case for attach_entity
|
|
||||||
|
|
||||||
Attach Entity # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_create_entity(self) -> None:
|
|
||||||
"""Test case for create_entity
|
|
||||||
|
|
||||||
Create Entity # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_delete_entity(self) -> None:
|
|
||||||
"""Test case for delete_entity
|
|
||||||
|
|
||||||
Delete Entity # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_detach_entity(self) -> None:
|
|
||||||
"""Test case for detach_entity
|
|
||||||
|
|
||||||
Detach Entity # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_all_entities(self) -> None:
|
|
||||||
"""Test case for get_all_entities
|
|
||||||
|
|
||||||
Get All Entities # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_attached_entities(self) -> None:
|
|
||||||
"""Test case for get_attached_entities
|
|
||||||
|
|
||||||
Get Attached Entities # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_entity_by_did(self) -> None:
|
|
||||||
"""Test case for get_entity_by_did
|
|
||||||
|
|
||||||
Get Entity By Did # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_entity_by_name(self) -> None:
|
|
||||||
"""Test case for get_entity_by_name
|
|
||||||
|
|
||||||
Get Entity By Name # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.entity import Entity # noqa: E501
|
|
||||||
|
|
||||||
class TestEntity(unittest.TestCase):
|
|
||||||
"""Entity unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> Entity:
|
|
||||||
"""Test Entity
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `Entity`
|
|
||||||
"""
|
|
||||||
model = Entity() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True,
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testEntity(self):
|
|
||||||
"""Test Entity"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.entity_create import EntityCreate # noqa: E501
|
|
||||||
|
|
||||||
class TestEntityCreate(unittest.TestCase):
|
|
||||||
"""EntityCreate unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> EntityCreate:
|
|
||||||
"""Test EntityCreate
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `EntityCreate`
|
|
||||||
"""
|
|
||||||
model = EntityCreate() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return EntityCreate(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]}
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return EntityCreate(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testEntityCreate(self):
|
|
||||||
"""Test EntityCreate"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,59 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.http_validation_error import HTTPValidationError # noqa: E501
|
|
||||||
|
|
||||||
class TestHTTPValidationError(unittest.TestCase):
|
|
||||||
"""HTTPValidationError unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> HTTPValidationError:
|
|
||||||
"""Test HTTPValidationError
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `HTTPValidationError`
|
|
||||||
"""
|
|
||||||
model = HTTPValidationError() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return HTTPValidationError(
|
|
||||||
detail = [
|
|
||||||
openapi_client.models.validation_error.ValidationError(
|
|
||||||
loc = [
|
|
||||||
null
|
|
||||||
],
|
|
||||||
msg = '',
|
|
||||||
type = '', )
|
|
||||||
]
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return HTTPValidationError(
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testHTTPValidationError(self):
|
|
||||||
"""Test HTTPValidationError"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.machine import Machine # noqa: E501
|
|
||||||
|
|
||||||
class TestMachine(unittest.TestCase):
|
|
||||||
"""Machine unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> Machine:
|
|
||||||
"""Test Machine
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `Machine`
|
|
||||||
"""
|
|
||||||
model = Machine() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return Machine(
|
|
||||||
name = '',
|
|
||||||
status = 'online'
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return Machine(
|
|
||||||
name = '',
|
|
||||||
status = 'online',
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testMachine(self):
|
|
||||||
"""Test Machine"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from openapi_client.api.repositories_api import RepositoriesApi # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
class TestRepositoriesApi(unittest.TestCase):
|
|
||||||
"""RepositoriesApi unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self) -> None:
|
|
||||||
self.api = RepositoriesApi() # noqa: E501
|
|
||||||
|
|
||||||
def tearDown(self) -> None:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_all_repositories(self) -> None:
|
|
||||||
"""Test case for get_all_repositories
|
|
||||||
|
|
||||||
Get All Repositories # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.resolution import Resolution # noqa: E501
|
|
||||||
|
|
||||||
class TestResolution(unittest.TestCase):
|
|
||||||
"""Resolution unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> Resolution:
|
|
||||||
"""Test Resolution
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `Resolution`
|
|
||||||
"""
|
|
||||||
model = Resolution() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return Resolution(
|
|
||||||
requester_name = 'C1',
|
|
||||||
requester_did = 'did:sov:test:1122',
|
|
||||||
resolved_did = 'did:sov:test:1234',
|
|
||||||
other = {test=test},
|
|
||||||
timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
|
|
||||||
id = 56
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return Resolution(
|
|
||||||
requester_name = 'C1',
|
|
||||||
requester_did = 'did:sov:test:1122',
|
|
||||||
resolved_did = 'did:sov:test:1234',
|
|
||||||
other = {test=test},
|
|
||||||
timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
|
|
||||||
id = 56,
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testResolution(self):
|
|
||||||
"""Test Resolution"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from openapi_client.api.resolution_api import ResolutionApi # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
class TestResolutionApi(unittest.TestCase):
|
|
||||||
"""ResolutionApi unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self) -> None:
|
|
||||||
self.api = ResolutionApi() # noqa: E501
|
|
||||||
|
|
||||||
def tearDown(self) -> None:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_all_resolutions(self) -> None:
|
|
||||||
"""Test case for get_all_resolutions
|
|
||||||
|
|
||||||
Get All Resolutions # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,79 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.service import Service # noqa: E501
|
|
||||||
|
|
||||||
class TestService(unittest.TestCase):
|
|
||||||
"""Service unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> Service:
|
|
||||||
"""Test Service
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `Service`
|
|
||||||
"""
|
|
||||||
model = Service() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return Service(
|
|
||||||
uuid = '8e285c0c-4e40-430a-a477-26b3b81e30df',
|
|
||||||
service_name = 'Carlos Printing',
|
|
||||||
service_type = '3D Printing',
|
|
||||||
endpoint_url = 'http://127.0.0.1:8000',
|
|
||||||
status = 'unknown',
|
|
||||||
other = {action=[register, deregister, delete, create]},
|
|
||||||
entity_did = 'did:sov:test:1234',
|
|
||||||
entity = openapi_client.models.entity.Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True, )
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return Service(
|
|
||||||
uuid = '8e285c0c-4e40-430a-a477-26b3b81e30df',
|
|
||||||
service_name = 'Carlos Printing',
|
|
||||||
service_type = '3D Printing',
|
|
||||||
endpoint_url = 'http://127.0.0.1:8000',
|
|
||||||
status = 'unknown',
|
|
||||||
other = {action=[register, deregister, delete, create]},
|
|
||||||
entity_did = 'did:sov:test:1234',
|
|
||||||
entity = openapi_client.models.entity.Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True, ),
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testService(self):
|
|
||||||
"""Test Service"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.service_create import ServiceCreate # noqa: E501
|
|
||||||
|
|
||||||
class TestServiceCreate(unittest.TestCase):
|
|
||||||
"""ServiceCreate unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> ServiceCreate:
|
|
||||||
"""Test ServiceCreate
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `ServiceCreate`
|
|
||||||
"""
|
|
||||||
model = ServiceCreate() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return ServiceCreate(
|
|
||||||
uuid = '8e285c0c-4e40-430a-a477-26b3b81e30df',
|
|
||||||
service_name = 'Carlos Printing',
|
|
||||||
service_type = '3D Printing',
|
|
||||||
endpoint_url = 'http://127.0.0.1:8000',
|
|
||||||
status = 'unknown',
|
|
||||||
other = {action=[register, deregister, delete, create]},
|
|
||||||
entity_did = 'did:sov:test:1234'
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return ServiceCreate(
|
|
||||||
uuid = '8e285c0c-4e40-430a-a477-26b3b81e30df',
|
|
||||||
service_name = 'Carlos Printing',
|
|
||||||
service_type = '3D Printing',
|
|
||||||
endpoint_url = 'http://127.0.0.1:8000',
|
|
||||||
status = 'unknown',
|
|
||||||
other = {action=[register, deregister, delete, create]},
|
|
||||||
entity_did = 'did:sov:test:1234',
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testServiceCreate(self):
|
|
||||||
"""Test ServiceCreate"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from openapi_client.api.services_api import ServicesApi # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
class TestServicesApi(unittest.TestCase):
|
|
||||||
"""ServicesApi unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self) -> None:
|
|
||||||
self.api = ServicesApi() # noqa: E501
|
|
||||||
|
|
||||||
def tearDown(self) -> None:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_create_service(self) -> None:
|
|
||||||
"""Test case for create_service
|
|
||||||
|
|
||||||
Create Service # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_delete_service(self) -> None:
|
|
||||||
"""Test case for delete_service
|
|
||||||
|
|
||||||
Delete Service # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_all_services(self) -> None:
|
|
||||||
"""Test case for get_all_services
|
|
||||||
|
|
||||||
Get All Services # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_service_by_did(self) -> None:
|
|
||||||
"""Test case for get_service_by_did
|
|
||||||
|
|
||||||
Get Service By Did # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_get_services_by_name(self) -> None:
|
|
||||||
"""Test case for get_services_by_name
|
|
||||||
|
|
||||||
Get Services By Name # noqa: E501
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.services_by_name import ServicesByName # noqa: E501
|
|
||||||
|
|
||||||
class TestServicesByName(unittest.TestCase):
|
|
||||||
"""ServicesByName unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> ServicesByName:
|
|
||||||
"""Test ServicesByName
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `ServicesByName`
|
|
||||||
"""
|
|
||||||
model = ServicesByName() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return ServicesByName(
|
|
||||||
entity = openapi_client.models.entity.Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True, ),
|
|
||||||
services = [
|
|
||||||
openapi_client.models.service.Service(
|
|
||||||
uuid = '8e285c0c-4e40-430a-a477-26b3b81e30df',
|
|
||||||
service_name = 'Carlos Printing',
|
|
||||||
service_type = '3D Printing',
|
|
||||||
endpoint_url = 'http://127.0.0.1:8000',
|
|
||||||
status = 'unknown',
|
|
||||||
other = {action=[register, deregister, delete, create]},
|
|
||||||
entity_did = 'did:sov:test:1234',
|
|
||||||
entity = openapi_client.models.entity.Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True, ), )
|
|
||||||
]
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return ServicesByName(
|
|
||||||
entity = openapi_client.models.entity.Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True, ),
|
|
||||||
services = [
|
|
||||||
openapi_client.models.service.Service(
|
|
||||||
uuid = '8e285c0c-4e40-430a-a477-26b3b81e30df',
|
|
||||||
service_name = 'Carlos Printing',
|
|
||||||
service_type = '3D Printing',
|
|
||||||
endpoint_url = 'http://127.0.0.1:8000',
|
|
||||||
status = 'unknown',
|
|
||||||
other = {action=[register, deregister, delete, create]},
|
|
||||||
entity_did = 'did:sov:test:1234',
|
|
||||||
entity = openapi_client.models.entity.Entity(
|
|
||||||
did = 'did:sov:test:1234',
|
|
||||||
name = 'C1',
|
|
||||||
ip = '127.0.0.1',
|
|
||||||
visible = True,
|
|
||||||
other = {network=Carlos Home Network, roles=[service repository, service prosumer]},
|
|
||||||
attached = True, ), )
|
|
||||||
],
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testServicesByName(self):
|
|
||||||
"""Test ServicesByName"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.status import Status # noqa: E501
|
|
||||||
|
|
||||||
class TestStatus(unittest.TestCase):
|
|
||||||
"""Status unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def testStatus(self):
|
|
||||||
"""Test Status"""
|
|
||||||
# inst = Status()
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.validation_error import ValidationError # noqa: E501
|
|
||||||
|
|
||||||
class TestValidationError(unittest.TestCase):
|
|
||||||
"""ValidationError unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> ValidationError:
|
|
||||||
"""Test ValidationError
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `ValidationError`
|
|
||||||
"""
|
|
||||||
model = ValidationError() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return ValidationError(
|
|
||||||
loc = [
|
|
||||||
null
|
|
||||||
],
|
|
||||||
msg = '',
|
|
||||||
type = ''
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return ValidationError(
|
|
||||||
loc = [
|
|
||||||
null
|
|
||||||
],
|
|
||||||
msg = '',
|
|
||||||
type = '',
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testValidationError(self):
|
|
||||||
"""Test ValidationError"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
# coding: utf-8
|
|
||||||
|
|
||||||
"""
|
|
||||||
FastAPI
|
|
||||||
|
|
||||||
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
|
||||||
|
|
||||||
The version of the OpenAPI document: 0.1.0
|
|
||||||
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
||||||
|
|
||||||
Do not edit the class manually.
|
|
||||||
""" # noqa: E501
|
|
||||||
|
|
||||||
|
|
||||||
import unittest
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from openapi_client.models.validation_error_loc_inner import ValidationErrorLocInner # noqa: E501
|
|
||||||
|
|
||||||
class TestValidationErrorLocInner(unittest.TestCase):
|
|
||||||
"""ValidationErrorLocInner unit test stubs"""
|
|
||||||
|
|
||||||
def setUp(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
pass
|
|
||||||
|
|
||||||
def make_instance(self, include_optional) -> ValidationErrorLocInner:
|
|
||||||
"""Test ValidationErrorLocInner
|
|
||||||
include_option is a boolean, when False only required
|
|
||||||
params are included, when True both required and
|
|
||||||
optional params are included """
|
|
||||||
# uncomment below to create an instance of `ValidationErrorLocInner`
|
|
||||||
"""
|
|
||||||
model = ValidationErrorLocInner() # noqa: E501
|
|
||||||
if include_optional:
|
|
||||||
return ValidationErrorLocInner(
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return ValidationErrorLocInner(
|
|
||||||
)
|
|
||||||
"""
|
|
||||||
|
|
||||||
def testValidationErrorLocInner(self):
|
|
||||||
"""Test ValidationErrorLocInner"""
|
|
||||||
# inst_req_only = self.make_instance(include_optional=False)
|
|
||||||
# inst_req_and_optional = self.make_instance(include_optional=True)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
unittest.main()
|
|
||||||
@@ -26,12 +26,6 @@ def test_health(api_client: ApiClient) -> None:
|
|||||||
assert res.status == Status.ONLINE
|
assert res.status == Status.ONLINE
|
||||||
|
|
||||||
|
|
||||||
def test_entities_empty(api_client: ApiClient) -> None:
|
|
||||||
entity = EntitiesApi(api_client=api_client)
|
|
||||||
res = entity.get_all_entities()
|
|
||||||
assert res == []
|
|
||||||
|
|
||||||
|
|
||||||
def create_entities(num: int = 10) -> list[EntityCreate]:
|
def create_entities(num: int = 10) -> list[EntityCreate]:
|
||||||
res = []
|
res = []
|
||||||
for i in range(num):
|
for i in range(num):
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ export default function AccessPoint() {
|
|||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const interval = setInterval(() => {
|
const interval = setInterval(() => {
|
||||||
onRefresh();
|
onRefresh();
|
||||||
}, 1000);
|
}, 5000);
|
||||||
|
|
||||||
return () => clearInterval(interval);
|
return () => clearInterval(interval);
|
||||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
|||||||
@@ -10,13 +10,100 @@ import {
|
|||||||
CardHeader,
|
CardHeader,
|
||||||
Snackbar,
|
Snackbar,
|
||||||
Typography,
|
Typography,
|
||||||
|
CircularProgress,
|
||||||
|
IconButton,
|
||||||
} from "@mui/material";
|
} from "@mui/material";
|
||||||
import CopyToClipboard from "@/components/copy_to_clipboard";
|
import CopyToClipboard from "@/components/copy_to_clipboard";
|
||||||
import { useGetServicesByName } from "@/api/services/services";
|
import {
|
||||||
import { attachEntity, detachEntity } from "@/api/entities/entities";
|
attachEntity,
|
||||||
|
detachEntity,
|
||||||
|
isAttached,
|
||||||
|
} from "@/api/entities/entities";
|
||||||
import { mutate } from "swr";
|
import { mutate } from "swr";
|
||||||
import { Skeleton } from "@mui/material";
|
import { Skeleton } from "@mui/material";
|
||||||
import { Service } from "@/api/model";
|
import { Entity, Service } from "@/api/model";
|
||||||
|
import useGetEntityByNameOrDid from "@/components/hooks/useGetEntityByNameOrDid";
|
||||||
|
import { useGetAllServices } from "@/api/services/services";
|
||||||
|
import axios from "axios";
|
||||||
|
import CloseIcon from "@mui/icons-material/Close";
|
||||||
|
|
||||||
|
interface SnackMessage {
|
||||||
|
message: string;
|
||||||
|
severity: "success" | "error";
|
||||||
|
}
|
||||||
|
|
||||||
|
type AttachButtonProps = {
|
||||||
|
entity?: Entity;
|
||||||
|
setSnackbarMessage: (message: SnackMessage) => void;
|
||||||
|
setSnackbarOpen: (open: boolean) => void;
|
||||||
|
};
|
||||||
|
|
||||||
|
const AttachButton = ({
|
||||||
|
entity,
|
||||||
|
setSnackbarMessage,
|
||||||
|
setSnackbarOpen,
|
||||||
|
}: AttachButtonProps) => {
|
||||||
|
const [loading, setLoading] = useState(false);
|
||||||
|
|
||||||
|
const handleClick = async () => {
|
||||||
|
setLoading(true);
|
||||||
|
// Call the attach or detach function depending on the isAttached value
|
||||||
|
// and await for the result
|
||||||
|
try {
|
||||||
|
let response = await (entity?.attached
|
||||||
|
? detachEntity({ entity_did: entity?.did })
|
||||||
|
: attachEntity({ entity_did: entity?.did }));
|
||||||
|
|
||||||
|
if (!entity?.attached) {
|
||||||
|
console.log("calling isAttached");
|
||||||
|
response = await isAttached({ entity_did: entity?.did });
|
||||||
|
console.log("response: ", response);
|
||||||
|
}
|
||||||
|
const msg = {
|
||||||
|
message: response.data.message,
|
||||||
|
severity: "success",
|
||||||
|
} as SnackMessage;
|
||||||
|
setSnackbarMessage(msg);
|
||||||
|
setSnackbarOpen(true);
|
||||||
|
} catch (error) {
|
||||||
|
if (axios.isAxiosError(error)) {
|
||||||
|
// Extract the error message from the error object
|
||||||
|
const errorMessage = error.response?.data.detail[0].msg;
|
||||||
|
|
||||||
|
const msg = {
|
||||||
|
message: `${errorMessage}`,
|
||||||
|
severity: "error",
|
||||||
|
} as SnackMessage;
|
||||||
|
setSnackbarMessage(msg);
|
||||||
|
setSnackbarOpen(true);
|
||||||
|
} else {
|
||||||
|
console.error("error: ", error);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
setLoading(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Button
|
||||||
|
onClick={handleClick}
|
||||||
|
className="mr-6"
|
||||||
|
variant="contained"
|
||||||
|
// Disable the button while loading
|
||||||
|
disabled={loading}
|
||||||
|
>
|
||||||
|
{loading ? (
|
||||||
|
<CircularProgress size={24} />
|
||||||
|
) : entity?.attached ? (
|
||||||
|
"Detach"
|
||||||
|
) : (
|
||||||
|
"Attach"
|
||||||
|
)}
|
||||||
|
</Button>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
export default function Client({
|
export default function Client({
|
||||||
params,
|
params,
|
||||||
@@ -25,18 +112,16 @@ export default function Client({
|
|||||||
}) {
|
}) {
|
||||||
const { client_name } = params;
|
const { client_name } = params;
|
||||||
|
|
||||||
|
const { entity: entity } = useGetEntityByNameOrDid(client_name);
|
||||||
const {
|
const {
|
||||||
data: services,
|
data: services,
|
||||||
isLoading: services_loading,
|
isLoading: services_loading,
|
||||||
swrKey: entityKeyFunc,
|
swrKey: entityKeyFunc,
|
||||||
} = useGetServicesByName({
|
} = useGetAllServices();
|
||||||
entity_name: client_name,
|
|
||||||
});
|
|
||||||
|
|
||||||
const entity = services?.data?.entity;
|
|
||||||
const clients: Service[] = useMemo(() => {
|
const clients: Service[] = useMemo(() => {
|
||||||
if (services?.data?.services) {
|
if (services?.data) {
|
||||||
return services.data.services.filter((service) => {
|
return services.data.filter((service) => {
|
||||||
if (service.entity_did !== entity?.did) return true;
|
if (service.entity_did !== entity?.did) return true;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -60,47 +145,15 @@ export default function Client({
|
|||||||
|
|
||||||
const cardContentRef = useRef(null);
|
const cardContentRef = useRef(null);
|
||||||
const [snackbarOpen, setSnackbarOpen] = useState(false);
|
const [snackbarOpen, setSnackbarOpen] = useState(false);
|
||||||
const [snackbarMessage, setSnackbarMessage] = useState("");
|
const [snackbarMessage, setSnackbarMessage] = useState<
|
||||||
const [isAttached, setIsAttached] = useState(entity?.attached);
|
SnackMessage | undefined
|
||||||
|
>(undefined);
|
||||||
|
|
||||||
const closeSnackBar = () => {
|
const closeSnackBar = () => {
|
||||||
setSnackbarMessage("");
|
setSnackbarMessage(undefined);
|
||||||
setSnackbarOpen(false);
|
setSnackbarOpen(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
const onAttachEntity = async () => {
|
|
||||||
try {
|
|
||||||
if (entity) {
|
|
||||||
const response = await attachEntity(entity.did);
|
|
||||||
setSnackbarMessage(response.data.message);
|
|
||||||
setSnackbarOpen(true);
|
|
||||||
} else {
|
|
||||||
console.error("no entity");
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
} finally {
|
|
||||||
setIsAttached(true);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const onDetachEntity = async () => {
|
|
||||||
try {
|
|
||||||
if (entity) {
|
|
||||||
const response = await detachEntity(entity.did);
|
|
||||||
console.log(response);
|
|
||||||
setSnackbarMessage("Entity detached successfully.");
|
|
||||||
setSnackbarOpen(true);
|
|
||||||
} else {
|
|
||||||
console.error("no entity");
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error(error);
|
|
||||||
} finally {
|
|
||||||
setIsAttached(false);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
if (services_loading) return <Skeleton height={500} />;
|
if (services_loading) return <Skeleton height={500} />;
|
||||||
if (!services) return <Alert severity="error">Client not found</Alert>;
|
if (!services) return <Alert severity="error">Client not found</Alert>;
|
||||||
|
|
||||||
@@ -113,25 +166,13 @@ export default function Client({
|
|||||||
justifyContent: "space-between",
|
justifyContent: "space-between",
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<h2>Client 1</h2>
|
<h2>Entity {entity?.name}</h2>
|
||||||
<div>
|
<div>
|
||||||
{isAttached === false ? (
|
<AttachButton
|
||||||
<Button
|
entity={entity}
|
||||||
onClick={onAttachEntity}
|
setSnackbarMessage={setSnackbarMessage}
|
||||||
className="mr-6"
|
setSnackbarOpen={setSnackbarOpen}
|
||||||
variant="contained"
|
></AttachButton>
|
||||||
>
|
|
||||||
Attach
|
|
||||||
</Button>
|
|
||||||
) : (
|
|
||||||
<Button
|
|
||||||
onClick={onDetachEntity}
|
|
||||||
className="mr-6"
|
|
||||||
variant="contained"
|
|
||||||
>
|
|
||||||
Detach
|
|
||||||
</Button>
|
|
||||||
)}
|
|
||||||
|
|
||||||
<Button onClick={onRefresh} variant="contained">
|
<Button onClick={onRefresh} variant="contained">
|
||||||
Refresh
|
Refresh
|
||||||
@@ -169,7 +210,7 @@ export default function Client({
|
|||||||
<h4>Service View</h4>
|
<h4>Service View</h4>
|
||||||
<CustomTable
|
<CustomTable
|
||||||
loading={services_loading}
|
loading={services_loading}
|
||||||
data={services?.data?.services}
|
data={services?.data}
|
||||||
configuration={ServiceTableConfig}
|
configuration={ServiceTableConfig}
|
||||||
tkey="service-table"
|
tkey="service-table"
|
||||||
/>
|
/>
|
||||||
@@ -178,10 +219,25 @@ export default function Client({
|
|||||||
onClose={closeSnackBar}
|
onClose={closeSnackBar}
|
||||||
anchorOrigin={{ vertical: "top", horizontal: "center" }}
|
anchorOrigin={{ vertical: "top", horizontal: "center" }}
|
||||||
open={snackbarOpen}
|
open={snackbarOpen}
|
||||||
autoHideDuration={1000}
|
autoHideDuration={5000}
|
||||||
>
|
>
|
||||||
<Alert severity="success" sx={{ width: "100%" }}>
|
<Alert
|
||||||
{snackbarMessage}
|
severity={snackbarMessage?.severity}
|
||||||
|
// Add some margin or padding to the Alert component
|
||||||
|
sx={{ width: "100%", margin: 1, padding: 2 }}
|
||||||
|
// Add an IconButton component with a CloseIcon inside the Alert component
|
||||||
|
action={
|
||||||
|
<IconButton
|
||||||
|
size="small"
|
||||||
|
aria-label="close"
|
||||||
|
color="inherit"
|
||||||
|
onClick={closeSnackBar}
|
||||||
|
>
|
||||||
|
<CloseIcon fontSize="small" />
|
||||||
|
</IconButton>
|
||||||
|
}
|
||||||
|
>
|
||||||
|
{snackbarMessage?.message}
|
||||||
</Alert>
|
</Alert>
|
||||||
</Snackbar>
|
</Snackbar>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
import { AppContext } from "./useAppContext";
|
import { AppContext } from "./useAppContext";
|
||||||
|
|
||||||
const useGetEntityByName = (nameOrDid: string) => {
|
const useGetEntityByNameOrDid = (nameOrDid: string) => {
|
||||||
const { data } = useContext(AppContext);
|
const { data } = useContext(AppContext);
|
||||||
const allEntities = data.allEntities;
|
const allEntities = data.allEntities;
|
||||||
|
|
||||||
@@ -16,4 +16,4 @@ const useGetEntityByName = (nameOrDid: string) => {
|
|||||||
return { entity, isLoading: false };
|
return { entity, isLoading: false };
|
||||||
};
|
};
|
||||||
|
|
||||||
export default useGetEntityByName;
|
export default useGetEntityByNameOrDid;
|
||||||
@@ -36,7 +36,6 @@ const CustomTable = ({ configuration, data, loading, tkey }: ICustomTable) => {
|
|||||||
// cover use case if we want to render a component
|
// cover use case if we want to render a component
|
||||||
if (render) renderedValue = render(value);
|
if (render) renderedValue = render(value);
|
||||||
|
|
||||||
console.log("renderTableCell key", cellKey);
|
|
||||||
return (
|
return (
|
||||||
<StyledTableCell key={cellKey} align="left">
|
<StyledTableCell key={cellKey} align="left">
|
||||||
{renderedValue}
|
{renderedValue}
|
||||||
|
|||||||
@@ -71,7 +71,6 @@ export const ServiceTableConfig = [
|
|||||||
))}
|
))}
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
console.log("render", renderedValue);
|
|
||||||
return renderedValue;
|
return renderedValue;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user