Commit Graph

23 Commits

Author SHA1 Message Date
Jedd Morgan 3028e9e29d Asyicify ExecuteScriptAsync calls (#240)
* First pass adding async

* Updated Idle manager to work with async Tasks

* CA1506

* missing async

* Fixed tests

* Really fixed tests

* CA2201

* Really fixed the tests

* remaining awaits

* Async everywhere!

* Fixed merge errors

* fix: Missing imports

* IProgress sync used

* rename progress

* format

* Remove empty files

* update sdk

* convert progress

* use FireAndForget and readonly struct

* revert revit to use RevitTask

* don't use sync to UI thread for progress

* Fixes autocad loop to update UI with Task.Delay instead of Task.Yield

* format

* merge fixes

* update nugets

* fix imports for exceptions

* fix import

---------

Co-authored-by: Alan Rynne <alan@speckle.systems>
Co-authored-by: Adam Hathcock <adam@hathcock.uk>
2024-10-09 16:10:13 +01:00
Adam Hathcock 3227d09958 Simplify DI/assembly structure part deux (#270)
* Rename utils to common

* fix namespaces

* Rhino kind of works

* Fix converter registration

* Fixed circular referece with lazy resolving

* Fixed Rhino8

* Revit 2022 builds

* revit 2023 compiles

* working on revit

* use speckle app for info instead of statics

* lazy init bindings

* Rhino compiles

* Revit compiles

* Autocad 2022 builds

* Autocad/Civil builds

* ArcGIS compiles

* Remove Autofac completely

* format

* React to SDK renames

* fixes for merge

* Update nuget and official sln

* Remove extra projects

* AutoActivate IBrowserBridge and rename it

* add extra null check

* Merge fixes

* Fix convertermanager problem and add tests

* Add new test project to local sln

* Use recursion

* formatting

* resolve circular dep with lazy get
2024-09-24 16:15:01 +03:00
Dimitrie Stefanescu 6d3eb88b20 Dimitrie/cnx 430 re evaluate parameters (#255)
* wip

* feat(dui3): simpler parameter extraction logic + parameter definitions

* chore: refactoring

* wip

* feat(revit): removes parameter definition handler from context stack and relies on DI

cc oguzhan, we'll need to refactor a few things with this in mind

* chore: adds comments

* feat: comments and logging

* feat(revit): WIP adds setting for null/empty param sending, and other refactors

* feat: respects setting in extraction logic

* chore(dui3): adds extra comments

* Fix build errors

* feat: removes dead code

---------

Co-authored-by: oguzhankoral <oguzhankoral@gmail.com>
2024-09-23 16:45:49 +00:00
Adam Hathcock 33bf13602a Revert new DI simplification (#269) 2024-09-23 17:08:00 +01:00
Adam Hathcock 7307e83860 Simplify DI assembly structure (#256)
* Rename utils to common

* fix namespaces

* Rhino kind of works

* Fix converter registration

* Fixed circular referece with lazy resolving

* Fixed Rhino8

* Revit 2022 builds

* revit 2023 compiles

* working on revit

* use speckle app for info instead of statics

* lazy init bindings

* Rhino compiles

* Revit compiles

* Autocad 2022 builds

* Autocad/Civil builds

* ArcGIS compiles

* Remove Autofac completely

* format

* React to SDK renames

* fixes for merge

* Update nuget and official sln

* Remove extra projects

* AutoActivate IBrowserBridge and rename it

* add extra null check
2024-09-23 15:27:46 +01:00
Dimitrie Stefanescu 4e48427bee Revit receive first pass: reference geometry workflow (CNX-403) (#254)
* feat(dui3): re-enables receive binding

probably the fourth time

* chore(revit): drastic cleanup

maybe too drastic, we will see soon

* feat(revit): starts scaffolding revit root to host converter

* RenderMaterialToHostConverter added back

* casting to GeometryObject instead of GeometryElement

* feat(dui3): fallback display values and refactors out material converter

* feat(dui3): creates DS and adds point support

* feat(dui3): closed nurbs fallback to display values

* David/cnx 443 selection (#231)

* highlight works

* use status.success on receive success

* question comment

* wip

* feat(revit): wraps receive in correct context

* wip

* feat(dui3): adds prototype grouping by collection

and adds todos

* remove invalid characters from group name

* hide warnings preprocessor

* exception handling and error log

* added cancellation and progress reporting

* chore: comments and minor cleanup

* David/cnx 409 2 add rendermaterial and color manager to connector (#242)

* materials wip

* Make it work receiving render materials

* MaterialBaker mods, cleanup

* Address the PR comments

* Remove invalid chars from structured material names

---------

Co-authored-by: oguzhankoral <oguzhankoral@gmail.com>

* Minor cleanup

* Add object application id into objects of its layer render material proxy

* feat(dui3): adds compatibility for objects with display values

* Use LocalToGlobal logic for revit receive

* Use common local to global util for arcgis too

* Remove unnecessary registration

* Remove using

* Remove unnecessart ToList

* Register LocalToGlobalConverterUtils for connectors not as common

* purge materials and groups in Revit before update (#245)

* purge materials and groups in Revit before update

* cleaner linq

* renamed _groupManager to _groupBaker

* assign categories to DirectShapes after receive, updated revit invalid chars (#253)

* Post conflict resolving problems

* minor changes, logging, comments (#257)

* minor changes, logging, comments

* typo

---------

Co-authored-by: David Kekesi <david@speckle.systems>
Co-authored-by: kekesidavid <david.kekesi@gmail.com>
Co-authored-by: oguzhankoral <oguzhankoral@gmail.com>
2024-09-19 14:09:17 +03:00
Adam Hathcock 4a2233e167 SDK is non static and logging/tracing controls are moved to the connectors (#239)
* use new containerized SDK

* Use containered Tracing and Logging

* Autocad loads

* logging builds

* fmt

* Remove console logger and hook up merged logging

* cleanup

* Clean up logging

* use nuget

* Add Logging project to solution then consolidate getting assembly version

* don't need this project anymore

* merge fixes

* add new seq config

---------

Co-authored-by: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com>
2024-09-18 14:13:18 +00:00
Oğuzhan Koral 3d64a3c4b7 Feat(dui3): improve root and host builders (#226)
* Remove SyncToThread from connectors

* Run only conversion under RevitTask.RunAsync

* Remove SyncToThread from RhinoHostObjectBuilder

* Introduce RootObjectUnpacker

* Split bakers and unpackers for Rhino

* Remove unnecessary out

* Use RootObjectUnpacker for proxies

* Extract proxy keys to outside

* Remove redundant comment

* Add logger for unpackers and bakers

* Add steps to RhinoRootObjectBuilder

* Pass only projectId instead of all SendInfo to ConvertRhinoObject function

* Align AutocadRootObjectBuilder with RhinoRootObjectBuilder

* Align AutocadHostObjectBuilder with RhinoHostObjectBuilder

* Use ProxyKeys on arcgis and revit

* Split unpackers and bakers for autocad

* Note to Autocad SyncToThread

* Add logger to autocad unpackers and bakers

* Notes

* Reimplemented Async builder (#229)

* Split layer manager into bakers and unpackers

Also introduces LayerPathUnpacker as abstract class to handle GetLayerPath

* Remove redundant notes

* Make GetLayerPath logic same for autocad and rhino

* Use ex instead e for exception

* chore: fixes PR comments

---------

Co-authored-by: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com>
Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-09-11 20:26:21 +03:00
Adam Hathcock be572a20af Add Progress for download and deserialization (#151)
* First pass using ProgressDisplayManager

* update for local

* Change root reporting

* fmt

* add upload reporting and remove unknown progress

* fix locks

* add tests

* FIx local sln
2024-08-15 10:45:45 +00:00
Jedd Morgan d25272f5af Use Operations.Send over SendHelper (#140) 2024-08-13 11:07:47 +00:00
Adam Hathcock 891a18819b React to sdk renaming (#113)
* react to renamespacing

* merge dev

* fmt

* initialize things with typeloader

* autocad initialization

* add arcgis

* add more projects to local

* instrument rhino more

* update nugets

* fmt
2024-08-08 10:32:01 +00:00
Adam Hathcock 3cb527667c Rhino otel (#112)
* add autocad beginnings

* WIP on DUI3-316-AutoCAD-Civil3d-SideBySide-Run-DUI3-and-DUI2-together

* Rhino 7 basics

* fix targets

* launch rhp

* intermediate commit

* intermediate commit

* Logger for Speckle.Logging

* Use nugets

* adjust dependencies

* Build fix

* merge fixes

* oops, two classes

* more receive instrumentation

* instrument to otel but not seq

* adds color manager to autocad

* injects color manager

* adds colors to objects on receive

* merge fixes

* add config for otel

* fmt

* Fixes setting layer colors on receive

* fixes layer colors and adds color to objects

* autocad color bugs

* merge errors

* object ids fix

* adds application id to autocad layers

* object ids bug

* reduces type complexity on send

* initializes collection cache to empty

* Update RhinoColorManager.cs

* react to sdk changes

* Update nugets

* remove serilog again

* fmt

* Rhino 7/8 now initializes logs same as Revit

* more instrumenting

* remove post-bulid copy step

---------

Co-authored-by: Claire Kuang <kuang.claire@gmail.com>
2024-08-07 13:37:33 +01:00
Adam Hathcock 5f9c718056 Logging using ILRepack and start of Open Telemetry usage (#89)
* add autocad beginnings

* WIP on DUI3-316-AutoCAD-Civil3d-SideBySide-Run-DUI3-and-DUI2-together

* Rhino 7 basics

* fix targets

* launch rhp

* intermediate commit

* intermediate commit

* Logger for Speckle.Logging

* Use nugets

* adjust dependencies

* Build fix

* merge fixes

* oops, two classes

* more receive instrumentation

* instrument to otel but not seq

* adds color manager to autocad

* injects color manager

* adds colors to objects on receive

* merge fixes

* add config for otel

* fmt

* Fixes setting layer colors on receive

* fixes layer colors and adds color to objects

* autocad color bugs

* merge errors

* object ids fix

* adds application id to autocad layers

* object ids bug

* reduces type complexity on send

* initializes collection cache to empty

* Update RhinoColorManager.cs

* react to sdk changes

* Update nugets

* remove serilog again

* fmt

---------

Co-authored-by: Claire Kuang <kuang.claire@gmail.com>
2024-08-07 11:56:55 +00:00
Oğuzhan Koral dfe2f71b67 Feat(dui3): CNX-182 upload download progress updates (#111)
* Downloading progress

* chore(dui3): comprise solution

* note re cnx-202

---------

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-08-07 11:10:28 +00:00
KatKatKateryna bf0f2b3884 All operations: split main tread operations (ArcGIS, Rhino, Revit, Aacad) (#94)
* remove sync to main thread on Receive Operation

* non-gis datasets writing - to main thread

* map layers - on main thread

* gis & non-gis converters - to main thread

* Revert "non-gis datasets writing - to main thread"

This reverts commit 9b10a9ec99.

* all to main thread

* async host installer

* RootObjectBuilder uses Task now for sending

* move subscriptions to new layers to Send event

* Send to async

* spaces on conflict merge

* format

---------

Co-authored-by: Adam Hathcock <adam@speckle.systems>
Co-authored-by: Oğuzhan Koral <45078678+oguzhankoral@users.noreply.github.com>
2024-08-03 13:09:22 +03:00
Adam Hathcock 4237d8ac22 Use ServerTransportFactory on receive (#64) 2024-07-23 15:59:32 +01:00
Jedd Morgan e0f26d2816 More warnings (#41)
* More warnings

* Code warnings fixes and setup

* more warning fixes

* Fixed all warnings

* format

* Fixed new warnings

* registration

---------

Co-authored-by: Adam Hathcock <adam@speckle.systems>
2024-07-22 17:15:04 +01:00
Adam Hathcock ea8b8dddce D ui3 100 ensure proper disposal of transports from di factory (#49)
* changes to use new factory

* Update nuggets

* update params
2024-07-22 10:38:10 +01:00
Adam Hathcock 3498e5854e Rework logging to be more MS logger (#33)
* Rework logging to be more MS logger

* Add compile references

* Add scanning for send helper
2024-07-16 18:56:17 +02:00
Jedd Morgan 7e5a7e525f DUI3-350 update dui3 connectors to use new api client functions (#20)
* DUI3 all using new FE2 client functions

* undone some warnings (we'll look at those during the meetup)
2024-07-12 11:52:32 +01:00
Adam Hathcock c241028079 Update csharpier and format (#14) 2024-07-10 15:13:55 +01:00
Oğuzhan Koral 7cdf86345b DUI3-126 shared files (#12)
* Account service to get account first from id otherwise from server Url

- And other simplications, removing dup code etc.

* Add TransportException to all bindings

* Register AccountService as singleton and add doc
2024-07-09 22:00:35 +01:00
Adam Hathcock 60499e3a34 Initial commit from alpha 2024-07-04 11:56:34 +01:00