Skip to content

Commit

Permalink
Added more package documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
simon-brooke committed May 19, 2017
1 parent 49b2836 commit de83ed9
Show file tree
Hide file tree
Showing 10 changed files with 59 additions and 8 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,5 @@ licencekey\.txt
Documentation/html/

Documentation/latex/

*.gz
6 changes: 6 additions & 0 deletions SuiteCRMAddIn/BusinessLogic/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <summary>
/// The BusinessLogic package contains most of the algorithmic plumbing for the addin.
/// </summary>
namespace SuiteCRMAddIn.BusinessLogic
{
}
7 changes: 0 additions & 7 deletions SuiteCRMAddIn/Daemon/package.md

This file was deleted.

11 changes: 11 additions & 0 deletions SuiteCRMAddIn/Dialogs/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/// <summary>
/// The Dialogs package will eventually contain all the dialogs which are used by the addin.
/// </summary>
/// <remarks>
/// <para>
/// Older forms and dialogs are found in SuiteCRMAddIn with names prefixed **frm**. The intention is that they should gradually be migrated.
/// </para>
/// </remarks>
namespace SuiteCRMAddIn.Dialogs
{
}
6 changes: 6 additions & 0 deletions SuiteCRMAddIn/Exceptions/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <summary>
/// The Exceptions package contains all custom exceptions used by the addin.
/// </summary>
namespace SuiteCRMAddIn.Exceptions
{
}
6 changes: 6 additions & 0 deletions SuiteCRMAddIn/ProtoItems/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <summary>
/// ProtoItems are C# implementations of CRM classes, in order to make serialising to JSON easier.
/// </summary>
namespace SuiteCRMAddIn.ProtoItems
{
}
6 changes: 6 additions & 0 deletions SuiteCRMClient/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <summary>
/// SuiteCRMClient is a client library for the SuiteCRM JSON API.
/// </summary>
namespace SuiteCRMClient
{
}
11 changes: 11 additions & 0 deletions SuiteCRMClient/Exceptions/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/// <summary>
/// The Exceptions package contains all custom exceptions used by the client.
/// </summary>
/// <remarks>
/// <para>
/// In the older code there is a widespread practice of throwing raw instances of Exception. This is bad practice, and those raw exceptions should gradually be replaced by specialised exceptions. At the time of writing there are still 7 raw exceptions thrown.
/// </para>
/// </remarks>
namespace SuiteCRMClient.Exceptions
{
}
6 changes: 6 additions & 0 deletions SuiteCRMClient/RESTObjects/Documentation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <summary>
/// The RESTObjects package contains classes which may be deserialised from JSON messages sent by CRM.
/// </summary>
namespace SuiteCRMClient.RESTObjects
{
}
6 changes: 5 additions & 1 deletion developers_introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ The original code makes heavy use of Hungarian notation, and nothing conformed t

This is being improved, gradually. Newly created forms and dialogs, for example, are now in the namespace SuiteCRMAddin.Dialogs, and have class names ending in **Dialog**, whereas older forms and dialogs are found in SuiteCRMAddIn with names prefixed **frm**. The intention is that they should gradually be migrated.

Broadly, all inline documentation has been written by Simon; at the point that he took over there was very little inline documentation at all. He is to be blamed, therefore, for all the bits that are wrong or out of date.
## Documentation

Documentation is partial and incomplete; and, since we don't know the original designers intention and have had to infer it from the code, some may be mistaken or just plain wrong. We are gradually trying to improve this situation.

Broadly, all inline documentation has been written by Simon; at the point that he took over there was very little inline documentation at all. He is to be blamed, therefore, for all the bits that are wrong or out of date.

HTML documentation is generated from the inline documentation using [doxygen](https://www.stack.nl/~dimitri/doxygen/). **The HTML documentation should never be directly edited**. Instead please edit inline documentation in the code, and regenerate with doxygen. A convention has been adopted of adding a file *Documentation.cs* to each package, to contain package level documentation. By convention this file should contain no class or other code.

0 comments on commit de83ed9

Please sign in to comment.