【Windchill监听器、队列、排程】
目录
Windchill监听器
监听器的概念
监听器的监听器实现原理
监听器的客制化
Windchill队列、排程
队列、排程的概念
Windchill常见出厂队列
自定义队列
Windchill 11新增功能
Windchill监听器
监听器的概念
监听器,字面上的理解就是监听观察某个事件(程序)的发生情况,当被监听的事件真的发生了的时候,事件发生者(事件源) 就会给注册该事件的监听者(监听器)发送消息,告诉监听者某些信息,同时监听者也可以获得一份事件对象,根据这个对象可以获得相关属性和执行相关操作。
事件:用户对事件源的一个操作,或者说程序执行某个方法,称之为一个事件,如人员检出文档。 事件源:发生事件的对象就是事件源,也就是被监听的对象,具体的某个文档对象,部件对象等。 事件监听器(处理器):监听并负责处理事件的方法,如监听到主内容被替换后,需要判断主内容的文件格式是否符合要求等。
监听器的监听器实现原理



监听器的客制化
新建AbstractServer接口
public interface AbstractServer {
}
GeneralListener类定义
需要继承ServiceEventListenerAdapter ; 增加构造方法GeneralListener(String s) ; 覆写父类方法notifyVetoableEvent(Object event) ,该方法中可编写监听到对应事件和对象后具体要执行的内容
在windchill shell 中执行如下命令注册监听器,注册监听器后,重新 启动windchill监听器即可生效
xconfmanager -s wt.services.service.5007=ext.sjjx.listen.AbstractServer/ext.sjjx.listen.GeneralServer -t codebase/wt.properties –p windchill stop & windchill start
Windchill队列、排程
队列、排程的概念
通常用户点击页面某个功能的后,系统通常会立即在执行该操作后的业务逻辑,并将执行结果反馈给用户;但是,有的时候不需要用户立即知道执行结果,或者该操作需要执行很久才能计算出结果,如果仍然让用户等结果出现才能执行后续操作,则带来非常不好的体验感。 为了解决上述问题,队列和排程发挥了极大的作用。在生产环境中,队列和排程通常是运行在BMS服务中,他们是运行在windchill BMS服务中的一套程序代码或底层服务;不考虑业务的情况下,他们的执行不影响用户的操作,队列、排程的执行,用户无法看见,但是,队列中代码执行后产生的结果可以看见
Windchill常见出厂队列
EMailQueue
邮件服务用来排列发送电子邮件的请求。向邮件服务请求发送电子邮件时,将在 EMailQueue 上对该请求进行列队。在队列中处理该请求时,便会发送电子邮件。邮件服务还会使用队列来重新尝试发送那些发送失败的电子邮件。
PublisherQueues
可视化服务用来管理可视化数据的发布和打印,可视化服务中 CAD 数据通常在检入后发布。这样,许多客户站点便可大量使用这些队列来执行长时间 (可能是几小时) 运行的作业
WfPropagationQueue
工作流 (及其关联任务) 使用 WfPropagationQueue 将所有状态更改传播到“工作流”对象。这包括与那些状态更改关联的所有路由表达式和转变表达式。
WfScheduleQueue
工作流 (及其关联任务) 用来排列所有定时的事件。最后期限检查具有最后期限设置的任意工作流对象,并且在此队列内执行基于表达式的“同步自动机”。
WfUserWorkQueue
工作流 (及其关联任务) 用来实例化工作流自动机和执行工作流自动机操作。
更多队列请进入站点,队列管理器查看。自定义的队列创建成功后,也会显示到该页面

自定义队列
队列的创建
给队列添加执行条目,当向队列中添加条目后,如果队列没有阻塞也不需要排队的情况下,会立即执行该条目指向的方法

排程的创建
排程中添加条目,需要指定所属队列,排程条目名称,执行的类,执行方法,下次执行时间等,当当前时间到达排程的下次执行时间后,即可执行对应的方法

Windchill 11新增功能
Windchill 11与 windchill 9相比,界面有了较大的变化,但是实现模型是一致的。
Windchill 11的前端以ext js作为基础框架进行实现; Windchill 11中引入了 springframework ,因此可以开发rest接口,以及使用自动注入等功能; Windchill 11使用注解的方式建模相比 windchill9(Rational Rose)简单明了,仅需在java中使用注解,在执行命令即可。 Windchill 11开放webservice接口更加方便简单,发布的接口与传统webservice一致,学习起来更简单,(没有在windchill9中用过该功能,不确定使用适用windchill9) windchill 11中使用MVC table 、 MVC Tree Table相比 windchill 9中的JCA table、 JCA Tree Table更加简单明了,且前端代码量大大减少。 Windchill 11中的一个DataUtility实例可以配置到多个IBA属性上 文档管理:移除了 Java Applet 上载和下载机制 用户必须具有“下载”权限才能下载包含多个主要内容文件对象的“主要内容”。 类型属性管理器使用网页形式展示 生命周期和工作流模板列表使用网页形式展示
相关文章:
【Windchill监听器、队列、排程】
目录 Windchill监听器 监听器的概念 监听器的监听器实现原理 监听器的客制化 Windchill队列、排程 队列、排程的概念 Windchill常见出厂队列 自定义队列 Windchill 11新增功能 Windchill监听器 监听器的概念 监听器,字面上的理解就是监听观察某个事件&…...
统计信号处理基础 习题解答10-14
题目: 观测到数据 其中是已知的,是方差为的WGN,且和独立,求的MMSE估计量以及最小贝叶斯MSE。 解答: 观测到的数据写成矢量形式: 其中: 根据题目条件,符合定理10.3,因此…...
APP各种抓包教程
APP各种抓包教程 9/100 发布文章 wananxuexihu 未选择任何文件 new 前言 每当遇到一些 APP 渗透测试项目的时候,抓不了包的问题令人有点难受,但是抓不了包并不能代表目标系统很安全,那么接下来我会整理一下目前我所了解到的一些抓包方法 **声…...
web前端开发项目教学:深入剖析四大核心、五大技能、六大实战、七大建议
web前端开发项目教学:深入剖析四大核心、五大技能、六大实战、七大建议 在数字化的今天,Web前端开发已成为一项不可或缺的技能。无论是初学者还是有一定经验的开发者,都需要通过系统的项目教学来提升自己的技能水平。本文将围绕Web前端开发项…...
从入门到高手的99个python案例(2)
51. 列表和数组比较 - 列表通用,NumPy数组高效。 import numpy as np normal_list [1, 2, 3] np_array np.array([1, 2, 3]) print(np_array.shape) # 输出 (3,), 数组有形状信息 52. Python的内置模块datetime - 处理日期和时间。 from datetime import…...
btstack协议栈实战篇--Performance - Stream Data over SPP (Server)
btstack协议栈---总目录_bt stack是什么-CSDN博客 目录 1.Track throughput 2.Packet Handler 3.btstack_main 4.log信息 RFCOMM连接打开后,请求RFCOMM EVENT CAN SEND NOW,通过rfcomm request can send now event()。 当我们得到RFCOMM EVENT CAN SEND NOW…...
ThinkPHP5.0 apache服务器配置URL重写,index.php去除
本地环境wamp .htaccess文件代码 <IfModule mod_rewrite.c>Options FollowSymlinks -MultiviewsRewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] </IfModule> 踩过这个坑&a…...
《TCP/IP网络编程》(第十五章)套接字和标准I/O
之前数据通信时,使用的是read&write函数以及其他各种I/O函数,本章将使用标准I/O函数,例如C语言的fopen、fgetc、fputs等等;C语言的cout、cin等等 1.使用标准I/O函数的优点 ①跨平台兼容性: 标准I/O函数通常是跨平…...
认识一些分布函数-Gumbel分布
1. Gumbel分布 Gumbel分布(也称为古贝尔型)是一种常用的非对称极值分布( Extreme Value Distribution,EVD),用于建模极大值和极小值,也就是所谓的EVD Type I分布。例如,EVD Type I 被用来预测地震、洪水和其他自然灾害,以及在风险管理中建模操作风险和那些在一定年龄…...
C语言之void类型的本质
一:C语言属于强类型语言 (1)编程语言分两种:强类型语言和弱类型语言。强类型语言所有的变量都有自己固定的类型,这个类型有固定的类型占用,有固定的解析方法;弱类型语言中没有类型的概念&#x…...
Wall国内开源程序照片墙,支持VR全景及安装教程
下载 GitHub官网:https://github.com/zhang-tong-yao/wall 软件下载:https://github.com/zhang-tong-yao/wall/releases,推荐下载最新的版本。 演示效果 目前支持PC端和移动端自适应。 演示地址:https://demo-wall.ityao.cn …...
七个备受欢迎的IntelliJ IDEA实用插件
有了Lombok插件,IntelliJ就能完全理解Lombok注解,使它们能如预期般工作,防止出现错误,并改善IDE的自动完成功能。 作为IntelliJ IDEA的常用用户,会非常喜欢使用它,但我们必须承认,有时这个IDE&…...
HDFS架构
HDFS(Hadoop Distributed File System)是Apache Hadoop项目的核心组件之一,它是一个分布式文件系统,专为运行在通用硬件上的大型数据集提供高吞吐量的数据访问。HDFS的设计目标是支持大规模数据的存储和处理,尤其是在大…...
【机器学习】LightGBM: 优化机器学习的高效梯度提升决策树
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 LightGBM: 优化机器学习的高效梯度提升决策树引言一、LightGBM概览二、核心技术…...
【会议征稿,IEEE出版】第六届物联网、自动化和人工智能国际学术会议(IoTAAI 2024,7月26-28)
第六届物联网、自动化和人工智能国际会议(IoTAAI 2024)将于2024年07月26-28日在中国广州召开。 会议旨在拓展国际科技学术交流渠道,搭建学术资源共享平台,促进全球范围内的科技创新,提升中外学术合作。会议还鼓励不同领…...
Flask-Logging
Flask-Logging 教程 概述 flask-logging 是一个用于在 Flask 应用中实现高级日志记录功能的库。它能够帮助开发者轻松地配置和管理日志,适用于开发和生产环境。通过使用 flask-logging,可以更好地监控应用的运行状态和调试问题。 官方文档 Flask-Log…...
go匿名函数
【1】Go支持匿名函数,如果我们某个函数只是希望使用一次,可以考虑使用匿名函数 【2】匿名函数使用方式: (1)在定义匿名函数时就直接调用,这种方式匿名函数只能调用一次(用的多) &am…...
ZED双目相机环境配置
官方资料:stereolabs/zed-python-api: Python API for the ZED SDK (github.com) 1,配置ZED相机环境 1.安装CUDA 查看电脑是否安装CUDA,安装过程可参考以下博文: 如何选择匹配的CUDA版本:https://blog.csdn.net/iam…...
【最新鸿蒙应开发】——HarmonyOS沙箱目录
鸿蒙应用沙箱目录 1. 应用沙箱概念 应用沙箱是一种以安全防护为目的的隔离机制,避免数据受到恶意路径穿越访问。在这种沙箱的保护机制下,应用可见的目录范围即为应用沙箱目录。 对于每个应用,系统会在内部存储空间映射出一个专属的应用沙箱…...
SringBoot 如何使用HTTPS请求及Nginx配置Https
SringBoot 如何使用HTTPS请求及Nginx配置Https SringBoot 如何使用HTTPS请求生成证书导入证书及配制创建配置类将pfx转成.key和.pem Nginx 安装SSL依赖./configure 安装依赖编译安装完openssl后报了新错 Nginx配置 SringBoot 如何使用HTTPS请求 生成证书 由于业务数据在传输过…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...
【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)
目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 (1)输入单引号 (2)万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
Kafka主题运维全指南:从基础配置到故障处理
#作者:张桐瑞 文章目录 主题日常管理1. 修改主题分区。2. 修改主题级别参数。3. 变更副本数。4. 修改主题限速。5.主题分区迁移。6. 常见主题错误处理常见错误1:主题删除失败。常见错误2:__consumer_offsets占用太多的磁盘。 主题日常管理 …...
