object_admin 0.1.0

A client and model library for Liferay DXP's object admin api, auto generated by open-api-generator.
Documentation
/*
 * Object
 *
 * A Java client JAR is available for use with the group ID 'com.liferay', artifact ID 'com.liferay.object.admin.rest.client', and version '1.0.45'.
 *
 * The version of the OpenAPI document: v1.0
 *
 * Generated by: https://openapi-generator.tech
 */
use headless_common::convert_case::Casing;

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize, FieldName)]
pub struct ObjectDefinition {
    #[serde(
        rename = "accountEntryRestricted",
        skip_serializing_if = "Option::is_none"
    )]
    pub account_entry_restricted: Option<bool>,
    #[serde(
        rename = "accountEntryRestrictedObjectFieldName",
        skip_serializing_if = "Option::is_none"
    )]
    pub account_entry_restricted_object_field_name: Option<String>,
    #[serde(rename = "actions", skip_serializing_if = "Option::is_none")]
    pub actions:
        Option<::std::collections::HashMap<String, ::std::collections::HashMap<String, String>>>,
    #[serde(rename = "active", skip_serializing_if = "Option::is_none")]
    pub active: Option<bool>,
    #[serde(rename = "dateCreated", skip_serializing_if = "Option::is_none")]
    pub date_created: Option<String>,
    #[serde(rename = "dateModified", skip_serializing_if = "Option::is_none")]
    pub date_modified: Option<String>,
    #[serde(rename = "defaultLanguageId", skip_serializing_if = "Option::is_none")]
    pub default_language_id: Option<String>,
    #[serde(
        rename = "enableCategorization",
        skip_serializing_if = "Option::is_none"
    )]
    pub enable_categorization: Option<bool>,
    #[serde(rename = "enableComments", skip_serializing_if = "Option::is_none")]
    pub enable_comments: Option<bool>,
    #[serde(
        rename = "enableObjectEntryHistory",
        skip_serializing_if = "Option::is_none"
    )]
    pub enable_object_entry_history: Option<bool>,
    #[serde(
        rename = "externalReferenceCode",
        skip_serializing_if = "Option::is_none"
    )]
    pub external_reference_code: Option<String>,
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<i64>,
    #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
    pub label: Option<::std::collections::HashMap<String, String>>,
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(rename = "objectActions", skip_serializing_if = "Option::is_none")]
    pub object_actions: Option<Vec<crate::models::ObjectAction>>,
    #[serde(rename = "objectFields", skip_serializing_if = "Option::is_none")]
    pub object_fields: Option<Vec<crate::models::ObjectField>>,
    #[serde(rename = "objectLayouts", skip_serializing_if = "Option::is_none")]
    pub object_layouts: Option<Vec<crate::models::ObjectLayout>>,
    #[serde(
        rename = "objectRelationships",
        skip_serializing_if = "Option::is_none"
    )]
    pub object_relationships: Option<Vec<crate::models::ObjectRelationship>>,
    #[serde(rename = "objectViews", skip_serializing_if = "Option::is_none")]
    pub object_views: Option<Vec<crate::models::ObjectView>>,
    #[serde(rename = "panelAppOrder", skip_serializing_if = "Option::is_none")]
    pub panel_app_order: Option<String>,
    #[serde(rename = "panelCategoryKey", skip_serializing_if = "Option::is_none")]
    pub panel_category_key: Option<String>,
    #[serde(rename = "parameterRequired", skip_serializing_if = "Option::is_none")]
    pub parameter_required: Option<bool>,
    #[serde(rename = "pluralLabel", skip_serializing_if = "Option::is_none")]
    pub plural_label: Option<::std::collections::HashMap<String, String>>,
    #[serde(rename = "portlet", skip_serializing_if = "Option::is_none")]
    pub portlet: Option<bool>,
    #[serde(rename = "restContextPath", skip_serializing_if = "Option::is_none")]
    pub rest_context_path: Option<String>,
    #[serde(rename = "scope", skip_serializing_if = "Option::is_none")]
    pub scope: Option<String>,
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<Box<crate::models::Status>>,
    #[serde(rename = "storageType", skip_serializing_if = "Option::is_none")]
    pub storage_type: Option<String>,
    #[serde(rename = "system", skip_serializing_if = "Option::is_none")]
    pub system: Option<bool>,
    #[serde(
        rename = "titleObjectFieldName",
        skip_serializing_if = "Option::is_none"
    )]
    pub title_object_field_name: Option<String>,
    #[serde(rename = "x-class-name", skip_serializing_if = "Option::is_none")]
    pub x_class_name: Option<String>,
}

impl Display for ObjectDefinitionFieldName {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        write!(f, "{}", self.name().to_case(Case::Camel))
    }
}

use std::fmt::Display;

use headless_common::{convert_case::Case, field_types::FieldName};
pub use ObjectDefinitionFieldName as ObjectDefinitionField;

impl ObjectDefinition {
    pub fn new() -> ObjectDefinition {
        ObjectDefinition {
            account_entry_restricted: None,
            account_entry_restricted_object_field_name: None,
            actions: None,
            active: None,
            date_created: None,
            date_modified: None,
            default_language_id: None,
            enable_categorization: None,
            enable_comments: None,
            enable_object_entry_history: None,
            external_reference_code: None,
            id: None,
            label: None,
            name: None,
            object_actions: None,
            object_fields: None,
            object_layouts: None,
            object_relationships: None,
            object_views: None,
            panel_app_order: None,
            panel_category_key: None,
            parameter_required: None,
            plural_label: None,
            portlet: None,
            rest_context_path: None,
            scope: None,
            status: None,
            storage_type: None,
            system: None,
            title_object_field_name: None,
            x_class_name: None,
        }
    }
}